Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/AlexPerathoner/Sessions

Safari extension to save your working sessions
https://github.com/AlexPerathoner/Sessions

osx safari-extension utilities

Last synced: about 1 month ago
JSON representation

Safari extension to save your working sessions

Awesome Lists containing this project

README

        

# Sessions
Safari extension to save your working sessions

Have you ever been working on a project, with dozens of tabs open, and wondered how to save that window?
With *Sessions* you can easily save them, to re-open them whenever you'll want to!

## Note
**As for Sep. 2021 Apple has released a Safari update. One of the new features is basically what Sessions is doing. Developing and maintaing Sessions therefore doesn't make anymore sense to me. Sessions will still remain available and could get some sporadic updates. I now recommend using this repository for learning purposes.**

## Features
### New in 1.6:
- You can now reorder sessions by dragging them in the tabl
- Settings are moved to the settings button
- Auto-update: when opening a session in auto-update mode all changes are automatically saved
- Search bar is now more powerful and scans urls and tabs' titles, too!

### New in 1.5:
- You can now replace a saved session with the current workspace
- Option button is gone - right click on a session to display all the available options

### New in 1.4:
- You can now choose if you want to ignore or consider pinned tabs when saving your sessions
- Context menu has a new look

### New in 1.3:
- **Pinned** tabs are now no longer part of sessions and will therefore be ignored when restoring a session

### New in 1.2:
- Save and open **private** sessions! [1](#note1)
- Open non-private sessions in private windows!


### New in 1.1:
- Export as json
- Rename sessions
- Search

1: Note that since there are no public APIs avaible to open a private window I used the stratagem of sending a keystroke event to safari. This means that the function could sometimes fail and restore the session in a different window from the one opened.

## Installation
Download the [latest release](https://github.com/AlexPerathoner/Sessions/releases/latest) and copy the file Sessions.app into your Application's folder. Open it.

![Welcome Window](https://raw.githubusercontent.com/AlexPerathoner/Sessions/master/Screens/welcomeScreen.png)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2FAlexPerathoner%2FSessions.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2FAlexPerathoner%2FSessions?ref=badge_shield)

Safari will warn you that this extension can read sensible information from every website. That's because *Sessions* needs a high level read permission to get the URLs of the websites you have open. *Sessions* won't ever read any personal information.

As you enable the extension from the Safari's settings window you should see a new icon appear in the bar.

### Actions
* **Click** on the **save** button to store the current working session [2](#note2)
* **Double click** on a previously saved to re-open it
* **Click** on the **settings icon** next to the name of the session to view some other actions:
* **Restore** - Same as double-click action
* **Remove** - Deletes the sessions (Caution! **This action is irreversible!**)
* **Rename** - Same as one-click action. Lets you rename the session (the default name is the title of the first tab open when you clicked on *save*)
* **Export** - Creates a .json file in the Downloads folder with every information *Sessions* has stored concerning about that session

2: Note that a session only includes the tabs of your current window. **Other windows won't be included.**

## License

This project is licensed under the GPL-3.0 License - see the [LICENSE.md](LICENSE.md) file for details

[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2FAlexPerathoner%2FSessions.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2FAlexPerathoner%2FSessions?ref=badge_large)