Show HN: Maroik – Personal Finance and Scheduling CMS Built in Asp.net Core

5 days ago 4

Maroik is a modern web application built with ASP.NET Core MVC, featuring a comprehensive set of tools for personal and business management. It includes features such as expense tracking, calendar management, bulletin boards, and role-based user management.

1. Personal Finance Management

  • Expense tracking and categorization
  • Income recording
  • Budget management
  • Financial reports and analytics
  • Export to CSV/Excel

2. Calendar and Schedule Management

  • Daily/Weekly/Monthly calendar view
  • Event creation and management
  • Recurring events support
  • Calendar sharing between users
  • Event reminders
  • Multiple board categories
  • Post creation, editing, and deletion
  • Comment system
  • File attachments
  • Search functionality
  • Role-based access control (Admin/User)
  • User profile management
  • Session-based authentication
  • Password management
  • Login activity tracking
  • User management
  • System settings
  • Backup management
  • Log monitoring
  • Analytics dashboard
  • ASP.NET Core MVC 9.0
    • Minimal APIs
    • Hot Reload
    • Improved performance
    • Enhanced routing
    • Better dependency injection
  • PostgreSQL 17
  • Entity Framework Core 9.0
    • Improved query performance
    • Better async support
    • Enhanced change tracking
  • RESTful API
    • OpenAPI/Swagger integration
    • API versioning
    • Rate limiting
    • Request validation
  • Docker
    • Multi-stage builds
    • Container orchestration
    • Environment isolation
  • Authentication & Authorization
    • Session Authentication
    • JWT Authentication
    • Role-based access control
    • OAuth2/OpenID Connect
  • Cross-Origin Resource Sharing (CORS)
  • API Documentation
    • Swagger/OpenAPI
    • API Explorer
    • API versioning support
  • AdminLTE 3
  • Bootstrap 5.3
  • jQuery 3.7
  • HTML5/CSS3
  • JavaScript ES2024
  • NonfactorGrid
  • Chart.js 4.4
  • Font Awesome 6
  • DataTables
  • SweetAlert2
  • Visual Studio 2023
  • JetBrains Rider
  • Git
  • Docker Compose
  • Postman
Maroik/ ├── Maroik.AI/ # AI-related features ├── Maroik.Common/ # Common data access and utilities ├── Maroik.Crontab/ # Scheduled tasks management ├── Maroik.DB/ # Database configuration ├── Maroik.DeployOps/ # Deployment scripts ├── Maroik.FileStorage/ # File storage management ├── Maroik.Log/ # Logging system ├── Maroik.SSL/ # SSL/TLS certificate management ├── Maroik.WebAPI/ # RESTful API endpoints └── Maroik.WebSite/ # Frontend website
  • .NET 9.0 SDK or later
  • Docker and Docker Compose
  • Visual Studio 2023 (Windows) or JetBrains Rider (Linux/Mac)
  1. Install Visual Studio 2023 or higher
  2. Open Maroik.sln
  3. Set docker-compose as startup project
  4. Press F5 to run in debug mode
  1. Install JetBrains Rider
  2. Start debug mode with docker-compose.debug.yml
  3. Configure mail settings in appsettings files
  1. Configure appsettings.Production.json with domain name and mail settings
  2. Set email credentials in DBBackup.sh and UploadFileBackup.sh
  3. Copy Maroik folder to /home/ubuntu/
  4. Open ports 80, 443, 5001
  5. Run Deploy.sh script

Login

User-DashBoard

NonfactorGrid

UserProfile

WebAPI

  1. Fork the repository
  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

For issues and questions, please use the GitHub issue tracker.

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

  • All backup files are automatically sent via email and can overwrite upload folders and SQL script folders when needed.
  • Mail account configuration is required for deployment.
Read Entire Article