Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 AI-CMS (AI-Powered Content Management System)

A modern, full-stack content management system built with Angular (Frontend) and Node.js/Express (Backend), featuring AI-powered content generation and analytics.

🏗️ Project Structure

ai-cms/
├── backend/                 # Node.js/Express backend
│   ├── routes/             # API routes
│   ├── models/             # MongoDB models
│   ├── middleware/         # Custom middleware
│   ├── config/             # Configuration files
│   └── server.js           # Main server file
├── frontend/               # Angular frontend
│   ├── src/
│   │   ├── app/
│   │   │   ├── features/   # Feature modules
│   │   │   ├── core/       # Core services
│   │   │   └── shared/     # Shared components
│   │   └── styles.css      # Global styles
│   └── angular.json        # Angular configuration
└── README.md               # This file

✨ Features

🔐 Authentication & Authorization

  • User registration and login
  • JWT-based authentication
  • Role-based access control
  • Password validation and security

📝 Content Management

  • Create, edit, and manage content
  • Rich text editor
  • Content categorization and tagging
  • Draft and publish workflow

🤖 AI-Powered Tools

  • AI content generation
  • SEO optimization suggestions
  • Content analysis and insights
  • Smart tag recommendations

📊 Analytics Dashboard

  • Content performance metrics
  • User engagement analytics
  • SEO performance tracking
  • Real-time insights

🎨 Modern UI/UX

  • Responsive design
  • Dark/Light theme support
  • Modern component library
  • Smooth animations

🛠️ Tech Stack

Backend

  • Runtime: Node.js
  • Framework: Express.js
  • Database: MongoDB with Mongoose
  • Authentication: JWT
  • Validation: Joi
  • Security: bcryptjs, helmet, cors

Frontend

  • Framework: Angular 17+
  • Styling: Tailwind CSS
  • State Management: Angular Signals
  • Routing: Angular Router
  • HTTP Client: Angular HttpClient

🚀 Getting Started

Prerequisites

  • Node.js 18+
  • MongoDB 6+
  • Angular CLI 17+

Installation

  1. Clone the repository

    git clone <your-repo-url>
    cd ai-cms
  2. Install backend dependencies

    cd backend
    npm install
  3. Install frontend dependencies

    cd ../frontend
    npm install
  4. Environment Setup

    cd ../backend
    cp env.example .env
    # Edit .env with your configuration
  5. Start the backend

    cd backend
    npm start
  6. Start the frontend

    cd frontend
    npm start

🌐 API Endpoints

Authentication

  • POST /api/auth/register - User registration
  • POST /api/auth/login - User login
  • POST /api/auth/refresh - Refresh token
  • GET /api/auth/profile - Get user profile

Content

  • GET /api/content - List content
  • POST /api/content - Create content
  • PUT /api/content/:id - Update content
  • DELETE /api/content/:id - Delete content

Profile

  • GET /api/profile/me - Get current user profile
  • PUT /api/profile/me - Update profile
  • POST /api/profile/avatar - Upload avatar
  • DELETE /api/profile/avatar - Remove avatar

Analytics

  • GET /api/analytics/dashboard - Dashboard analytics
  • GET /api/analytics/content/:id - Content analytics

🔧 Development

Backend Development

cd backend
npm run dev          # Development mode with nodemon
npm start            # Production mode
npm test             # Run tests

Frontend Development

cd frontend
ng serve             # Development server
ng build             # Production build
ng test              # Run tests
ng lint              # Lint code

Database

# MongoDB connection string in .env
MONGODB_URI=mongodb://localhost:27017/ai-cms

📁 Project Organization

Backend Structure

  • Routes: API endpoint definitions
  • Models: MongoDB schema definitions
  • Middleware: Custom Express middleware
  • Config: Database and environment configuration

Frontend Structure

  • Features: Feature-based modules (auth, content, analytics)
  • Core: Essential services and guards
  • Shared: Reusable components and utilities

🚀 Deployment

Backend Deployment

  1. Set production environment variables
  2. Build and start the server
  3. Use PM2 or similar for process management

Frontend Deployment

  1. Build the production bundle: ng build --prod
  2. Deploy the dist/ folder to your hosting service
  3. Configure routing for SPA

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

📝 License

This project is licensed under the MIT License.

🆘 Support

For support and questions:

  • Create an issue in the repository
  • Contact the development team
  • Check the documentation

Built with ❤️ using modern web technologies

About

I-Powered Content Management System

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages