diff --git a/README.md b/README.md index c4033664..3d51773e 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,74 @@ -This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). +

+ +

+
+ GitHub Workflow Status (with event) + GitHub package.json version (subfolder of monorepo) + Static Badge +Static Badge -## Getting Started +
-First, run the development server: +> Note: TableX is still under development, don't expect it to be perfect, yet. -```bash -npm run dev -# or -yarn dev -# or -pnpm dev -# or -bun dev -``` +## About the Project + +Tablex aims at delivering a fast, user friendly, productive and **free** database browsing experience. + +While not claiming that it is a replacement of any other tool, yet, it strives to provide a, hopefully, good user experience. + +## What Does it offer ✨ + +- Delightful user experience +- Top-Notch performance +- Ultra small bundle size (~ 12MB) +- Free and Open-Source + +## Tech Stack ⌨️ + +- [Tauri](https://tauri.app/) : + - [NextJs](https://nextjs.org/) : Frontend Framework + - [Rust](https://www.rust-lang.org/) : Backend +- [Tailwind](https://tailwindcss.com/) : CSS Framework +- [Tanstack]() : [Query](), [Table]() +- [shadcn/ui](https://ui.shadcn.com/) : Components +- [Vercel](https://vercel.com/) : Deployment + +## Local Development 🧑🏻‍💻 + +To start playing around with TableX locally, you will need the following requirements: -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. +- Node v20.9.0 or later ( you can use the .nvmrc ) +- Cargo 1.74.1 or later -You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. +> some previous versions of the previously mentioned requirements may still work fine, but no guarantee. -This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. +Once you have setup the previous requirements, you can start by cloning the repo: -## Learn More +```bash +git clone https://github.com/kareemmahlees/tablex.git --depth=1 +``` + +then, install necessary dependencies: + +```bash +yarn install +# And +cargo install +``` -To learn more about Next.js, take a look at the following resources: +install husky git hooks: -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. +```bash +yarn husky install +``` -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! +and you are good to go 💫, you can start your development server by running: -## Deploy on Vercel +```bash +yarn tauri dev +``` -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. +## Contributing 🫱🏻‍🫲🏻 -Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. +please refer to [CONTRIBUTING.md](./docs/CONTRIBUTING.md) diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md new file mode 100644 index 00000000..dee479cc --- /dev/null +++ b/docs/CONTRIBUTING.md @@ -0,0 +1,23 @@ +## Thank You 😄 + +Thank you for taking the time to contribute and help TableX to grow and evolve!. + +All contributions are very welcomed, starting from fixing typos or reporting issues to bug fixes and pushing cool features. + +Whatever the level of your expertise, you will definitely find some issue that suites you best. ( Check out the [issues](https://github.com/kareemmahlees/tablex/issues) section ). + +## Some Guidelines to follow + +Make sure you have fulfilled the requirements and local development steps mentioned [here](../README.md#local-development-🧑🏻‍💻). + +## Commits + +TableX follows commit conventions inforced by [commitlint](https://github.com/conventional-changelog/commitlint). + +Commit checking is highly integrated in all parts of development process either as a pre-commit hook or checking by the lint action on push or pull-request. + +This is a very crucial part and we care about it soo much to keep the commit log consistent and clean, so please take the time to read the conventions of commitlint. + +## Multiply tiny is better than a Big one + +Separating your changes into multiple small commits is better to review and debug than a big fat commit diff --git a/docs/billboard.png b/docs/billboard.png new file mode 100644 index 00000000..21eee9f9 Binary files /dev/null and b/docs/billboard.png differ