sitr

Sitr (Site Imager Tool & Repository)

Crystal Status

Sitr is a high-performance web application built with Crystal and Kemal, designed for managing business listings and media.

🚀 Features

  • Fast & Efficient: Built on Crystal for native performance.
  • Modern Stack: Kemal, Slang templates, Tailwind CSS.
  • Robust Auth: Secure authentication and authorization (Role-based).
  • Media Management: Image processing and optimization.
  • Infrastructure: Container-ready (Alpine-based) with GitLab CI/CD integration.

🛠️ Tech Stack

  • Language: Crystal (>= 1.19.0)
  • Framework: Kemal
  • Database: MySQL (via crystal-mysql)
  • Cache: Redis (Valkey)
  • Templating: Slang
  • Testing: Spec + Selenium (Browser tests)

📦 Installation

Prerequisites

  • Crystal >= 1.19.0
  • MySQL 8.0+
  • Redis 7.0+
  • libvips (for image processing)

Setup

# Install dependencies
shards install

# Setup database
make db-up

# Seed data
make seed

💻 Development

Start the development server with auto-reloading:

make dev

Visit http://localhost:3000.

Testing

Run the test suite:

make test         # Unit tests
make test-browser # Browser integration tests
make test-all     # All tests

Local container testing:

make container-build
make container-run

📚 Documentation

Generate API documentation:

make docs

The documentation is available in docs/technical/api.

Technical documentation can be found in docs/technical/:

🚢 Deployment

Deployment is handled via GitLab CI/CD.

  • Staging: Deployed automatically from feature branches.
  • Production: Deployed when a semantic version tag (e.g., v1.0.0) is pushed.

See CI/CD Setup for details.

🤝 Contributing

  1. Fork it (https://gitlab.com/evalinux/sitr/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Merge Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

Repository

sitr

Owner
Statistic
  • 0
  • 0
  • 0
  • 0
  • 15
  • 20 days ago
  • January 31, 2026
License

MIT License

Links
Synced at

Wed, 11 Feb 2026 05:04:49 GMT

Languages