simple wiki system, written in Flask
Find a file
2025-10-10 19:07:15 +02:00
alembic schema changes, part #2 2025-10-10 19:07:15 +02:00
i18n code cleanup + aesthetic changes 2025-09-13 00:13:15 +02:00
salvi schema changes, part #1 2025-10-10 17:42:10 +02:00
.gitignore the big change 2025-09-05 21:42:18 +02:00
CHANGELOG.md update changelog 2025-10-10 17:46:29 +02:00
favicon.ico Replace favicon 2022-05-10 22:45:31 +02:00
LICENSE the big change 2025-09-05 21:42:18 +02:00
LICENSE.0_9 the big change 2025-09-05 21:42:18 +02:00
pyproject.toml schema changes, part #1 2025-10-10 17:42:10 +02:00
README.md the big change 2025-09-05 21:42:18 +02:00
requirements.txt the big change 2025-09-05 21:42:18 +02:00
robots.txt the big change 2025-09-05 21:42:18 +02:00

Salvi

Salvi is a simple wiki-like note-taking web application, written in Python using Flask framework.

Warning: Salvi is designed for personal, individual use. It may not be suitable as a community or team knowledge base.

Features

  • Write notes on the go, using Markdown syntax
  • Any note can have its own URL
  • Revision history
  • Stored in SQLite/MySQL databases
  • Material Icons
  • Light/dark theme
  • Calendar
  • Works fine even with JavaScript disabled.

Requirements & Dependencies

  • Python 3.10+.
  • Flask web framework (and Flask-Login / Flask-WTF / Flask-Arrest extensions).
  • SQLAlchemy ORM.
  • Markdown for page rendering.
  • SUOU. (since 1.0)
  • Python-Dotenv.
  • The database drivers needed for the type of database.

To install the dependencies, run (virtualenv advised):

pip install -e .

Usage

  • Clone this repository: git clone https://github.com/yusurko/salvi
  • Edit .env with the needed parameters. An example .env with MySQL:
APP_NAME=Salvi
DATABASE_URL=mysql://root:root@localhost/salvi
  • Run python3 -m app_init to initialize the database and create the administrator user. (The installer is unstable)
  • Run flask run.
  • You can now access Salvi in your browser at port 5000.

Caveats

  • The whole application is free of unit tests. Ergo untested. No coverage.
  • If you forget the password, there is currently no way to reset it. E-mail is not supported as of 1.0.
  • This app comes with no content. It means, you have to write it yourself.

License

Since 1.0, Salvi is licensed under the Apache License, Version 2.0, a non-copyleft free and open source license.

Salvi<=0.9 is under MIT license, available at LICENSE.0_9.

This is a hobby project, made available “AS IS”, with no warranty express or implied.

I (sakuragasaki46) may NOT be held accountable for Your use of my code.

It's pointless to file a lawsuit because you feel damaged, and it's only going to turn against you. What a waste of money you could have spent on a vacation or charity, or invested in stocks.