Skip to content

andrew-markin/spark

Repository files navigation

Spark 🧠⚡

License: GPL v3 Vue PWA Ready

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

✨ Features

  • 📱 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.

🚀 Quick Start

Use the Web App

The easiest way to use Spark is to visit the live site: https://spark.mayfleet.com

No installation or account required.

Install as a PWA (Mobile & Desktop)

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.

Run Locally for Development

If you want to contribute or run your own instance:

  1. Clone the repository

    git clone https://github.com/andrew-markin/spark.git
    cd spark
  2. Install dependencies

    npm install
  3. Start the development server

    npm run dev
  4. Open your browser and navigate to the local address shown in your terminal (usually http://localhost:5173).

🛠️ Project Setup

Recommended IDE Setup

VSCode + Volar (and disable Vetur).

Available Scripts

# 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 dataset

🤝 Contributing

Contributions 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.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. 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).

📜 License

Distributed under the GNU General Public License v3.0. See the LICENSE file for more details.

🙏 Credits & Attributions

For data sources, third-party assets, and inspiration, please see the CREDITS.md file.


Spark - Ignite your memory.

About

Lightweight brain training app designed to boost your memory and cognitive skills

Topics

Resources

License

Stars

Watchers

Forks