Giter VIP home page Giter VIP logo

tickup's Introduction

TickUp: Clean Architecture, Domain-Driven Design, Behavior-driven Development, Next.js 14, Open AI, Sentry, Shadcn, GSap, PlanetScale, Stripe, Playwright

image

Repo này là kết quả của Series Build Product Fast, nếu bạn không có thời gian để xem videos, hãy Star repo và clone về để dùng cho riêng bạn

Tính năng sẽ làm

  • Auth
  • Organization/Workspaces
  • Xây dựng các landing pages
  • AI tự động generate ra các template công việc/hoạt động nhóm...
  • Quản lý mục tiêu tổng, danh sách công việc
  • Nhóm có thể chat realtime trên Ticket/Issue đang hoạt động
  • Sử dụng AI để tạo tự động danh sách công việc hoặc tóm tắt cuộc hội thoại
  • Thanh toán tiền + nâng cấp subscriptions
  • Tracking user events với UTM

........ Sẽ cập nhật thêm khi có thời gian(hoặc mời bạn contribute)

Công nghệ triển khai

Architecture

Clean Architect + DDD(Domain-driven Design)

image

Để mà nói học về Clean Architecture, chắc học không hết mất. Nhưng ở project này, ta sẽ bóc tách tất cả module phức tạp theo hướng "Separate of concerns" - chia để trị. Và nó sẽ càng thú vị hơn ta kết hợp với DDD Pattern!

Ta cũng cần phải hiểu rõ Subdomains là gì.

Team gợi ý bạn nên mua sách về đọc để hiểu sâu sắc và để nâng tầm mình lên cao hơn.

Book Book Book

Framework/Toolings

Application

User Interface and User Experiences

  • AI: OpenAI + LLMs LangChain để generate các templates, gợi ý danh sách công việc, tóm tắt văn bản...
  • UI: CSS dùng TailwindCssRadix UI
  • Validation: Dùng Valibot để validate forms hoặc các đầu vào input nói chung
  • Error Handler: Sentry capture lại các lỗi, và có ErrorBoundary tránh lỗi xảy ra ở Client
  • Animation: GSap hoặc AnimateJs
  • Payment/Subscriptions: Stripe

CI/CD

Performance

  • Tools Web App:

    • MillionJs để làm React nhanh hơn ~80% so với nguyên bản
    • UnLighthouse để auditing, đo performance metrics... ở các pages bạn muốn!
    • Speedscope để trace performances profiles projects khi cần tối ưu sâu
  • Tools cho Backend

    • Artillery để chạy load test hoặc seeding dummy data vào môi trường test

...

User Experience Development

Hướng dẫn sử dụng project

Trước lúc chạm vào code

I. Đọc thật kỹ phần Architecture Design ở bên trên, tránh lú và khó hiểu.

Nếu đọc xong mà vẫn không hiểu, thì tạo issues hoặc discussion để hỏi nhé các bạn!

II. Tạo tài khoản để dùng và chạy được project

  1. Tạo tài khoản CodeRabbit AI
  2. Tạo tài khoản OpenAI
  3. Tạo tài khoản Github
  4. Tạo tài khoản Stripe
  5. Tạo tài khoản Clerk
  6. Tạo tài khoản Vercel
  7. Tạo tài khoản PlanetScale
  8. Tạo tài khoản Sentry
  9. Tạo tài khoản IpStack

Chạm vào code

  1. Install deps với yarn install
  2. Đổi .env.example thành .env và thêm các secret keys vào
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=

CLERK_SECRET_KEY=
IP_STACK_KEY=
  1. Khởi động app và tận hưởng
yarn dev

License

Tinh thần cho đi là chính nên là FREE to uses, đừng dùng nó để đi lừa đảo, hại người là mình thoải mái!. Nếu bạn muốn ủng hộ team - Hãy donate thông qua tài khoản bank này nhé.

Qrcode

MIT

tickup's People

Contributors

harrytran998 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

tickup's Issues

[FEAT]: Init Authentication với Clerk/Firebase Authen

What does this MR do and why?

DOD:

  1. Nghiên cứu nên dùng thằng nào ở giai đoạn đầu này để FREE?
  2. Implement tính năng Auth với
    • Auth với email/password
    • Auth với Google
    • Auth với Github
    • Auth với Facebook(Optional)

WHY?

  • Mình cần auth để xác minh danh tính người dùng khi dùng Tickup

The resources that you have researched

Link:

Acceptance Criteria Checklist

  • Read the contribution guide
  • Check existing discussions and issues.
  • The scope of the feature is clear and small enough to be implemented in a single MR - Not exceeding 500 lines of code and 40 files changed.
  • The time doing this feature does not exceed 1 day.

[FEAT]: Init project với base NextJs + Tailwindcss + Shadcn UI

What does this MR do and why?

Cần phải init project để anh em làm cùng + phát triển thật là nhanh(security + scaleable + stable)

The resources that you have researched

Link document: https://nextjs.org

Acceptance Criteria Checklist

  • Read the contribution guide
  • Check existing discussions and issues.
  • The scope of the feature is clear and small enough to be implemented in a single MR - Not exceeding 500 lines of code and 40 files changed.
  • The time doing this feature does not exceed 1 day.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.