Skip to content

AbdulDevHub/Opal-Labs-Frontend

Repository files navigation

🚀 Opal Labs — Frontend

A modern, Notion-like productivity platform built with cutting-edge web technologies.


🌐 Live Demo🛠 Backend Repo


Next.js TypeScript PostgreSQL Redis Playwright MIT License


✨ Introduction

This is a public copy of a private repository where I am collaborating with a team of 7 developers to build a Notion-like productivity application.

This repository contains the frontend portion of the project.
For the backend implementation, visit 👉 Opal Labs Backend

🧱 Tech Stack

  • Framework: Next.js (App Router)
  • Language: TypeScript
  • Auth: Google OAuth 2.0
  • Database: PostgreSQL
  • Caching: Redis
  • Testing: Playwright
  • Backend Language: Go
  • Methodology: Agile

🛠 Setup

yarn install
  1. Install all required workspace @recommended extensions
  2. Add the required .env values from the team drive

🚀 Getting Started

Start the development server:

yarn dev

Then open:

👉 http://localhost:3000


🔐 Google OAuth 2.0

Follow the instructions in the shared document:

👉 Google OAuth 2.0 Setup Guide


📘 Storybook

Run Storybook on port 6000:

yarn storybook

🧪 Testing & Quality Checks

Run linting and type checks:

yarn lint
yarn check-types

These commands run:

  • Pre-push via husky
  • CI/CD via GitHub Actions

🎭 Playwright Testing

Playwright is used for end-to-end testing of user interactions and API flows.

Usage

  1. Install dependencies:

    yarn
  2. Start the dev server:

    yarn dev
  3. Generate test code:

    npx playwright codegen
  4. Save generated tests to:

    tests/TestWithoutBackend.spec.ts
    
  5. Run tests:

    npx playwright test
  6. View reports:

    npx playwright show-report
  7. Run tests visually:

    npx playwright test --ui

📚 Learn more: Playwright Documentation


🤝 Contributing

Contributions are welcome!

  • Open an issue for bugs or feature requests
  • Submit a PR for improvements

📄 License

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

About

This is a public and enhanced copy of a private repository in which I worked with a team of 7 people to create a Notion-like productivity website. The project is built using Next.js, TypeScript, Google OAuth, the Agile Model, PostgreSQL, Redis, Playwright, and Go.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors