Spark is a lightweight brain training app designed to boost your memory and cognitive skills. Whether you're learning country capitals, flags, or other key facts, Spark helps you retain information through engaging repetition exercises. Test your existing knowledge, create new associations, and track your progress over time. Perfect for preparing for trivia games, quizzes, or simply keeping your mind sharp and active.
🌐 Live Application: https://spark.mayfleet.com
- 📱 Installable PWA: Use Spark like a native app on your phone or desktop — no app store required.
- 🧠 Adaptive Learning: Tests your knowledge and focuses on what you need to learn most.
- 📊 Progress Tracking: Visualize your improvement over time with simple statistics.
- 🎯 Multi-Topic Support: Comes pre-loaded with geography facts (capitals, flags). Easy to extend to new topics.
- ⚡ Lightweight & Fast: Built with Vue 3 and Vite for an instant, smooth experience.
- 📶 Offline Capable: Continue training even without an internet connection.
The easiest way to use Spark is to visit the live site: https://spark.mayfleet.com
No installation or account required.
Spark is a Progressive Web App (PWA). You can install it directly on your device for a full-screen, app-like experience.
- On Android/Chrome: Visit the site, tap the "Install" button in the address bar or the "Add to Home screen" option in the browser menu (⋮).
- On iOS/Safari: Tap the Share icon (📤) and then "Add to Home Screen."
- On Desktop (Chrome, Edge): Look for the "Install" button (➕ or ⚙️) in the address bar.
If you want to contribute or run your own instance:
-
Clone the repository
git clone https://github.com/andrew-markin/spark.git cd spark -
Install dependencies
npm install
-
Start the development server
npm run dev
-
Open your browser and navigate to the local address shown in your terminal (usually
http://localhost:5173).
VSCode + Volar (and disable Vetur).
# Install dependencies
npm install
# Start a hot-reload development server
npm run dev
# Build the app for production (outputs to /dist)
npm run build
# Lint the source code with ESLint
npm run lint
# Format the source code with Prettier
npm run format
# Preview the production build locally
npm run preview
# Deploy the production build to GitHub Pages
npm run deploy
# Update the dataset (the .env file configuration may be required)
npm run datasetContributions are welcome! Whether it's fixing a bug, adding a new feature, or improving documentation, please feel free to open an Issue or Pull Request.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Please ensure your code follows the existing style and passes linting (npm run lint), and is formatted correctly (npm run format).
Distributed under the GNU General Public License v3.0. See the LICENSE file for more details.
For data sources, third-party assets, and inspiration, please see the CREDITS.md file.
Spark - Ignite your memory.