Skip to content

keyy-tech/Novalyn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Absolutely! Here’s the full README.md content in Markdown file format, ready to save as README.md in your GitHub repo. You can copy the content below directly into a .md file.


# 🌠 Novalyn

> *New light for your workflow.*

**Novalyn** is a modern, intelligent project and task management platform that helps teams stay **connected, organized, and focused**.  
Built with **React** for the frontend and **Django REST Framework (DRF)** for the backend, Novalyn empowers teams to plan, collaborate, and deliver with clarity.

---

## 🚀 Features

- Create and manage **projects, tasks, and subtasks**
- Assign tasks to team members with **due dates, status, and priority**
- Real-time collaboration with **comments and activity logs**
- **Kanban board**, **list view**, and **calendar view**
- File attachments and task-related documents
- Email & in-app **notifications** for updates and reminders
- GitHub and Slack integration for workflow automation
- Role-based permissions (Admin, Member, Guest)

---

## 🧩 Tech Stack

| Layer | Technology |
|-------|------------|
| Frontend | React, TypeScript, Tailwind CSS, React Query, Zustand |
| Backend | Django, Django REST Framework, PostgreSQL |
| Realtime | Django Channels / WebSockets |
| Storage | AWS S3 (attachments) |
| Auth | JWT (djangorestframework-simplejwt) |
| Dev Tools | Docker, Prettier, ESLint, Black, GitHub Actions |

---

## 📁 Project Structure

### Backend (Django)

backend/ ├── manage.py ├── requirements.txt ├── novalyn/ │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── apps/ │ ├── users/ │ ├── projects/ │ ├── tasks/ │ └── comments/ └── media/ # uploaded files


### Frontend (React)

frontend/ ├── package.json ├── tsconfig.json ├── public/ └── src/ ├── components/ ├── pages/ ├── hooks/ ├── services/ # API calls ├── context/ # state management ├── utils/ └── App.tsx


---

## ⚙️ Installation

### Prerequisites
- Python 3.10+
- Node.js 18+
- PostgreSQL 14+
- Docker (optional but recommended)

---

### Backend Setup

1. **Clone the repo**
```bash
git clone https://github.com/yourusername/novalyn.git
cd novalyn/backend
  1. Create and activate virtual environment
python -m venv venv
source venv/bin/activate   # Linux/macOS
venv\Scripts\activate      # Windows
  1. Install dependencies
pip install -r requirements.txt
  1. Set up environment variables Create a .env file in backend/:
SECRET_KEY=your_django_secret_key
DEBUG=True
DB_NAME=novalyn_db
DB_USER=postgres
DB_PASSWORD=yourpassword
DB_HOST=localhost
DB_PORT=5432
  1. Run migrations
python manage.py migrate
  1. Start the development server
python manage.py runserver

The backend API will be available at http://localhost:8000/api/


Frontend Setup

  1. Navigate to frontend directory:
cd ../frontend
  1. Install dependencies:
npm install
  1. Start development server:
npm start

Frontend will run at http://localhost:3000 and communicate with the backend API.


🔗 Connecting Frontend & Backend

  • In frontend/src/services/api.ts, set the API base URL:
export const API_BASE_URL = "http://localhost:8000/api";
  • Use React Query or axios to interact with the DRF backend.
  • Example JWT authentication:
axios.defaults.headers.common['Authorization'] = `Bearer ${localStorage.getItem('accessToken')}`;

🛠️ Usage

  1. Sign up or log in as a user
  2. Create a project
  3. Add tasks to the project
  4. Assign tasks to team members
  5. Update task status, priority, and due date
  6. Comment on tasks for collaboration
  7. Drag tasks on Kanban board to update progress
  8. Receive notifications for updates and deadlines

🌐 Deployment (Optional)

  • Backend: Deploy Django on Heroku, Render, or AWS Elastic Beanstalk
  • Frontend: Deploy React app on Vercel, Netlify, or AWS S3 + CloudFront
  • Database: Use managed PostgreSQL (ElephantSQL, AWS RDS)
  • Storage: AWS S3 for file uploads

👥 Contribution

We welcome contributions! Follow these steps:

  1. Fork the repository
  2. Create a branch:
git checkout -b feature/your-feature-name
  1. Make changes
  2. Run tests
# backend
python manage.py test

# frontend
npm test
  1. Commit changes using Conventional Commits
git commit -m "feat(tasks): add due date notifications"
  1. Push the branch and open a Pull Request

📝 License

MIT License © 2025 Novalyn See LICENSE for details.


📌 Contact

Project Maintainer: Kotoka Emmanuel GitHub: https://github.com/keyy-tech/novalyn


🔮 Roadmap (Optional)

  • Real-time updates via WebSockets
  • Calendar & Gantt views
  • Advanced reporting & analytics
  • Mobile app (React Native)
  • GitHub & Slack integrations

Novalyn — Turning chaos into clarity for your team.

About

A modern project and task management platform that brings clarity, collaboration, and connection to every team.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages