Skip to content

An open-source, cross-platform and highly freedom CMS APP

License

Notifications You must be signed in to change notification settings

sblzdddd/OpenCMS

Repository files navigation

OpenCMS

OpenCMS

⚠️ Important Notices

macOS and iOS Users: Please note that the app may not work optimally on macOS and iOS platforms as I don't have a proper testing environment for these platforms. If you encounter any issues, please submit a bug report.


An open-source, cross-platform campus management app.

Features

Dynamic Home Page - Sort anything on your home page by long press + drag, Add / Remove any icons, resize widgets as you want! Flexible Schedule Displays - A variety of schedule, time, and appointment views for pages, providing a more intuitive way to manage your time and resources. Gain Test Insights - Visualize assessment results through intuitive charts and data. Identify strengths, weaknesses, and progress instantly. Customize Your Theme - Infinite amounts of color themes based on one custom seed color! Window effects (Mica, Acrylic, etc.) are also supported! Styled Web CMS - OpenCMS eliminates color inconsistencies between Web CMS and APP. Automatically uses APP color theme with dark mode support. Create Your Own Skin - Adding images as backgrounds and icons for different pages! Also support exporting the skins as files to share with others! Your Data, Your Choice - OpenCMS encrypts and stores user data & credentials locally. No extra third-party server, no data collection & statistics, all your data is handled by yourself! Open and Free, Forever - OpenCMS is Fully open-source and licensed for modification. You can report issues, sharing feedback, or suggest improvements!

🚀 Getting Started

System Requirements

  • Android: Android 5.0 (API level 21) or higher
  • iOS: iOS 11.0 or higher
  • Windows: Windows 10 version 1903 or higher (64-bit only)
  • macOS: macOS 10.14 or higher

Download and Install

  1. Check your system architecture:

    • Windows: 64-bit only (Flutter requirement)
    • macOS: Intel or Apple Silicon (M1/M2) - check in About This Mac
    • iOS: iOS 11.0 or higher (Flutter requirement)
    • Android: Check in Settings > About Phone for architecture (arm64, x86_64, or armeabi-v7a)
  2. Download the latest release:

    • Visit the Releases page
    • Download the appropriate version for your platform and architecture
    • Follow the platform-specific installation instructions below
  3. Install and run:

    • Android: Install the APK file and grant necessary permissions
    • iOS: Sign the app archive and sideload the IPA file (requires Apple Developer account)
    • Windows: Extract the portable version and run the executable
    • macOS: Extract the archive and run OpenCMS.app

🛠️ Development

Prerequisites

  1. Flutter SDK:

    • Install Flutter SDK (version 3.30.0 or higher, recommended 3.35.5)
    • Add Flutter to your system PATH
    • Verify installation: flutter doctor
  2. Platform-specific requirements:

    • Android: Android Studio with Android SDK
    • iOS: Xcode (macOS only)
    • Windows: Visual Studio with C++ development tools
    • macOS: Xcode command line tools

    For detailed specifications, run flutter doctor to check your development environment.

Setup Development Environment

  1. Clone the repository:

    git clone https://github.com/your-username/OpenCMS.git
    cd OpenCMS
  2. Install dependencies:

    flutter pub get
  3. Configure platform-specific settings:

    • Android: Update android/app/build.gradle if needed
    • iOS: Run cd ios && pod install (if using CocoaPods)
    • Windows: Ensure Visual Studio is properly configured
    • macOS: Run cd macos && pod install
  4. Start the development app:

    # Run on default platform
    flutter run
    
    # Run on specific platform
    flutter run -d windows
    flutter run -d android
    flutter run -d ios
    flutter run -d macos

Development Workflow

  1. Create a feature branch:

    git checkout -b feature/your-feature-name
  2. Make your changes and test thoroughly

  3. Run tests:

    flutter test
  4. Format and analyze code:

    flutter format .
    flutter analyze
  5. Commit and push:

    git add .
    git commit -m "Add your feature description"
    git push origin feature/your-feature-name
  6. Create a Pull Request on GitHub

Project Structure

lib/
├── data/           # Data models and constants
├── pages/          # App pages and screens
├── services/       # Business logic and API services
├── ui/             # UI components and widgets
└── utils/          # Utility functions and helpers

❤️ Acknowledgments

Special thanks to the developers of these amazing packages:

And thank you to all contributors and users! 🎉

About

An open-source, cross-platform and highly freedom CMS APP

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •