Sortir is an event discovery platform that aggregates and visualizes local events on an interactive map. It solves a common problem: finding interesting activities nearby shouldn't require checking multiple specialized platforms.
While existing services focus on specific niches (concerts, movies, art exhibitions) or locations, Sortir brings everything together in one unified, dynamic interface.
sequenceDiagram
participant br as Browser
participant pb as PocketBase (/cmd)
Note over pb: BaaS server
participant sk as SvelteKit (/ui)
Note over sk: adapter-static
sk->>pb: compiled SK app <br>(bundled with `go:embed`)
pb->>br: serve SK app
br->>pb: API calls
pb->>pb: SQLite
pb->>br: res
sequenceDiagram title Infrastructure sequence
participant pb as PocketBase (/cmd)
Note over pb: BaaS server
participant cl as Collectors
participant iw as Indexed website
pb->>pb: CRON Job
loop for each collector
pb->>cl: Collect()
cl->>iw: Fetch API or webpages
iw->>cl: Raw data
cl->>cl: Clean and normalize<br>collected events
cl->>pb: Upsert event
end
Before you begin, ensure you have the following installed:
To install all dependencies, run:
make install
This will:
To build the application, run:
make build
This command:
To run the application in development mode:
make dev
This command:
For UI-only development:
make dev-ui
To clean build artifacts:
make clean
You can test the CI workflow locally before pushing changes using act, a tool for running GitHub Actions locally:
# macOS
brew install act
# Linux
curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash
# Windows (with Chocolatey)
choco install act-cli
# From the repository root
act
# To run a specific job
act -j build
# To list all available actions
act -l
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Sortir aims to be the go-to platform for discovering what's happening around you. Unlike specialized services limited to specific event types or locations, or the static view provided by mapping services, Sortir offers a dynamic, personalized experience.
Like a search engine for local activities, it crawls, indexes, and displays events on an interactive map - from movies showing tonight at nearby theaters to temporary exhibitions closing tomorrow, concerts, festivals, and parties.
The platform learns your preferences over time and can even suggest activity itineraries for you and your friends when exploring a new city.