🎯📈 Someplice is a self-hosted application that helps you achieve your goals. Built with SvelteKit and SQLite, it lets you set daily intentions and track your progress effectively.
Report Bug
·
Request Feature
Table of Contents
- 🎯 Set and manage multiple goals
- 📅 Set daily intentions for each goal
- ✅ Mark intentions as complete
- 🧐 Review and reflect on your past intentions
- ☀️/🌙 Toggle between light and dark mode
There are three ways to install Someplice: with pnpm, nix, or Docker. Choose the method that best suits your needs.
- Clone the repository
- Install dependencies
cd Someplice
pnpm install
- Run database migrations
pnpm run db:migrate
- Start the application
pnpm run dev
- Ensure you have devbox installed.
- Clone the repository
- Run
devbox install
followed bydevbox shell
in the root of the repository. This will open a shell with all the dependencies installed (node and pnpm) - Follow pnpm instructions above to install dependencies, run migrations, and start the application
The Docker public image build is WIP. For now, you can build the image locally:
docker build -t someplice .
Then run the container. Replace /host/dataFolder
with the absolute path to the folder where you want to store the database.
docker run -v /host/dataFolder:/app/data -p 3000:3000 someplice:latest sh -c "pnpm run db:migrate && node build/index.js"
Running the db migrations is only required the first time you run the container. After that, you can just run:
docker run -v /host/dataFolder:/app/data -p 3000:3000 someplice:latest
When making database changes, use kysely-codegen to generate the TypeScript types for the database. Run pnpm run db:codegen
to generate the types. To set up, create an .env
file with your database connection string:
# SQLite
DATABASE_URL=YOUR_ABSOLUTE_PATH_TO/Someplice/src/lib/db/