Code Monkey home page Code Monkey logo

onelove's Introduction

onelove ๐Ÿซถ

๐Ÿš€ Motivation

As a creator and relentless dreamer, navigating the intricate process of crafting complete products felt overwhelming. Developing frontend, backend, mobile, Scraper, and various components for each repository seemed like a series of separate battles and redundant efforts. I envisioned a space where the challenges of developing entire products could be addressed directly. A place where collaboration flowed naturally, contracts seamlessly, and tooling was a boon rather than a necessary evil.

๐ŸŽฏ Goals

  • Technology Agnostic: Use your preferred tech stack - be it Vercel, GCP, AWS, Supabase, Firebase, Prisma, Drizzle, etc.
  • Ease of Use: No boilerplate code, no unnecessary folder structures - just simplicity.
  • Frameworks with Community Support: Leverage widely-used frameworks with large communities such as Next.js, Nest.js, React Native, Electron, Playwright, and Plasmo.

๐Ÿ“š Table of Contents

๐Ÿš€ Getting Started

Step 1: The easiest way to get started is to clone the repository:

# Get the latest snapshot
git clone https://github.com/suchcodemuchwow/onelove.git myproject

# Change directory
cd myproject

# Install NPM dependencies
pnpm install

# Then simply start your app
pnpm dev

๐Ÿ“ฆ What's Inside?

This Turborepo includes the following packages/apps:

Apps

Packages

  • @acme/ui: Shadcn ui library
  • @acme/eslint-config: eslint configurations
  • @acme/typescript-config: tsconfig.jsons used throughout the monorepo

Utilities

This Turborepo has some additional tools already set up for you:

๐Ÿ› ๏ธ Dependencies

Package Description
crawlee Web scraping library.
electron Cross-platform desktop application framework.
eslint JavaScript and TypeScript code quality checker.
expo Framework for building universal native apps.
jest JavaScript testing framework.
lefthook Git hooks manager.
next React framework for static websites.
playwright Node library to automate browsers.
plasmo Browser extension framework.
prettier Opinionated code formatter.
react JavaScript library for building user interfaces.
react-native Framework for building native apps using React.
react-native-web React Native for the web.
tailwindcss Utility-first CSS framework.
turbo High-performance build system for JavaScript and TypeScript.
typescript TypeScript language.
vite Fast development server and build tool.
@babel/core Babel compiler core.
@ianvs/prettier-plugin-sort-imports Prettier plugin for sorting imports.
@nestjs/cache-manager NestJS cache manager.
@nestjs/cli NestJS command line interface.
@nestjs/common NestJS common utilities and decorators.
@nestjs/config NestJS configuration module.
@nestjs/core NestJS core framework.
@nestjs/platform-express NestJS HTTP server platform.
@nestjs/schematics NestJS schematics.
@nestjs/swagger NestJS OpenAPI (Swagger) integration.
@next/eslint-plugin-next ESLint plugin for Next.js.
@plasmohq/messaging PlasmoHQ messaging library.
@plasmohq/prettier-plugin-sort-imports Prettier plugin for sorting imports (PlasmoHQ version).
@typescript-eslint/eslint-plugin TypeScript ESLint plugin.
@typescript-eslint/parser TypeScript ESLint parser.
@vitejs/plugin-react Vite plugin for React.
autoprefixer PostCSS plugin to parse CSS and add vendor prefixes.
babel-preset-expo Babel preset for Expo projects.
cache-manager Generic caching module for Node.js.
class-transformer Decorator-based object transformation library.
class-validator Validator and sanitizer for classes.
electron-builder Create installers for Electron apps.
eslint-config-prettier ESLint configuration for Prettier.
eslint-config-turbo Turbo's ESLint configuration.
eslint-plugin-import ESLint plugin for import/export syntax.
eslint-plugin-jsx-a11y ESLint plugin for JSX accessibility rules.
eslint-plugin-react ESLint plugin for React.
eslint-plugin-react-hooks ESLint plugin for React Hooks.
expo-dev-client Expo development client.
expo-status-bar Expo status bar component.
expo-updates Expo updates module.
lucide-react SVG icon component library.
postcss Tool for transforming styles with JS plugins.
prettier-plugin-tailwindcss Prettier plugin for Tailwind CSS.
react-dom Entry point to the DOM and server renderers for React.
react-router-dom Declarative routing for React.js.
reflect-metadata Decorator metadata reflection library.
rxjs Reactive programming library.
source-map-support Adds source map support to Node.js.
supertest HTTP assertion library for testing Node.js HTTP servers.
tailwind-merge Tailwind CSS utility for merging configurations.
tailwindcss-animate Tailwind CSS plugin for animations.
ts-jest Jest preprocessor for TypeScript.
ts-loader TypeScript loader for webpack.
ts-node TypeScript execution environment for Node.js.
tsconfig-paths Resolve TypeScript module aliases.
tsup TypeScript module bundler.
tsx TypeScript React JSX support.
vite-plugin-electron Vite plugin for Electron.
vite-plugin-electron-renderer Vite plugin for Electron renderer.

๐Ÿงช Running e2e Tests

To run e2e tests for mobile, ensure you have the following installed:

# Install applesimutils
brew tap wix/brew
brew install applesimutils

Please run the mobile app the first time you start using the repository; otherwise, Detox may not find the app.

๐Ÿ“ Todo

  • Shared types package

๐Ÿ“œ Changelog

Check out the changelog for the project here.

๐Ÿค Contributing

If something is unclear, confusing, or needs refactoring, please let me know. Pull requests are always welcome. Please open an issue before submitting a pull request. This project adheres to the Airbnb JavaScript Style Guide with a few minor exceptions.

๐Ÿ“„ License

Copyright (c) 2023-2024 suchcodemuchwow

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS," WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

onelove's People

Contributors

renovate[bot] avatar suchcodemuchwow avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

onelove's Issues

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Location: renovate.json
Error type: The renovate configuration file contains some invalid settings
Message: packageRules[0]: packageRules cannot combine both matchUpdateTypes and followTag. Rule: {"matchUpdateTypes":["minor","patch","pin","digest"],"followTag":"latest","automerge":true}

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update dependency @types/chrome to v0.0.270
  • chore(deps): update dependency @types/eslint to v8.56.11
  • chore(deps): update dependency autoprefixer to v10.4.20
  • chore(deps): update dependency eslint-config-turbo to v1.13.4
  • chore(deps): update dependency postcss to v8.4.41
  • chore(deps): update dependency tailwindcss to v3.4.10
  • chore(deps): update dependency turbo to v1.13.4
  • chore(deps): update dependency vite-plugin-electron to v0.28.7
  • chore(deps): update nextjs monorepo to v14.2.5 (@next/eslint-plugin-next, next)
  • fix(deps): update dependency @nestjs/config to v3.2.3
  • fix(deps): update dependency clsx to v2.1.1
  • fix(deps): update dependency react-native-web to v0.19.12
  • chore(deps): update dependency @babel/core to v7.25.2
  • chore(deps): update dependency @ianvs/prettier-plugin-sort-imports to v4.3.1
  • chore(deps): update dependency @nestjs/cli to v10.4.4
  • chore(deps): update dependency @types/node to v20.16.1
  • chore(deps): update dependency @vitejs/plugin-react to v4.3.1
  • chore(deps): update dependency electron to v29.4.6
  • chore(deps): update dependency eslint-plugin-jsx-a11y to v6.9.0
  • chore(deps): update dependency eslint-plugin-react to v7.35.0
  • chore(deps): update dependency lefthook to v1.7.14
  • chore(deps): update dependency prettier to v3.3.3
  • chore(deps): update dependency prettier-plugin-tailwindcss to ^0.6.0
  • chore(deps): update dependency ts-jest to v29.2.4
  • chore(deps): update dependency tsup to v8.2.4
  • chore(deps): update dependency tsx to v4.17.0
  • chore(deps): update dependency typescript to v5.5.4
  • chore(deps): update playwright monorepo to v1.46.1 (@playwright/test, playwright)
  • fix(deps): update dependency @nestjs/swagger to v7.4.0
  • fix(deps): update dependency cache-manager to v5.7.6
  • fix(deps): update dependency plasmo to v0.88.0
  • fix(deps): update dependency react-router-dom to v6.26.1
  • fix(deps): update dependency tailwind-merge to v2.5.2
  • fix(deps): update nest monorepo (@nestjs/common, @nestjs/core, @nestjs/platform-express, @nestjs/schematics, @nestjs/testing)
  • fix(deps): update radix-ui-primitives monorepo (@radix-ui/react-checkbox, @radix-ui/react-dropdown-menu, @radix-ui/react-label, @radix-ui/react-popover, @radix-ui/react-slot)
  • chore(deps): update dependency @config-plugins/detox to v8
  • chore(deps): update dependency @types/eslint to v9
  • chore(deps): update dependency electron to v31
  • chore(deps): update dependency eslint to v9
  • chore(deps): update dependency eslint-config-turbo to v2
  • chore(deps): update dependency supertest to v7
  • chore(deps): update dependency turbo to v2
  • chore(deps): update expo monorepo (major) (babel-preset-expo, expo, expo-dev-client, jest-expo)
  • chore(deps): update typescript-eslint monorepo to v8 (major) (@typescript-eslint/eslint-plugin, @typescript-eslint/parser)
  • fix(deps): update dependency react-day-picker to v9
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/frontend-e2e.yml
  • actions/checkout v4
  • actions/upload-artifact v4
.github/workflows/pull-request.yaml
  • actions/checkout v4
  • actions/checkout v4
  • actions/checkout v4
  • actions/checkout v4
  • actions/checkout v4
.github/workflows/welcome.yaml
  • actions/checkout v4
tooling/github/setup/action.yml
  • pnpm/action-setup v2
  • actions/setup-node v4
npm
apps/api/package.json
  • @nestjs/cache-manager ^2.2.1
  • @nestjs/common ^10.3.3
  • @nestjs/config ^3.2.0
  • @nestjs/core ^10.3.3
  • @nestjs/platform-express ^10.3.3
  • @nestjs/swagger ^7.3.0
  • cache-manager ^5.4.0
  • class-transformer ^0.5.1
  • class-validator ^0.14.1
  • reflect-metadata ^0.2.2
  • rxjs ^7.8.1
apps/desktop/package.json
  • react ^18.2.0
  • react-dom ^18.2.0
apps/extension/package.json
  • @plasmohq/messaging ^0.6.0
  • lucide-react ^0.368.0
  • plasmo 0.85.2
  • react 18.2.0
  • react-dom 18.2.0
  • react-router-dom ^6.10.0
apps/frontend/package.json
  • next ^14.0.3
  • react ^18.2.0
  • react-dom ^18.2.0
  • @playwright/test ^1.40.1
  • @types/node ^20.3.1
apps/mobile/package.json
  • expo ^50.0.15
  • expo-dev-client ~3.3.11
  • expo-splash-screen ~0.26.4
  • expo-status-bar 1.11.1
  • expo-updates 0.24.12
  • jest-expo ^50.0.4
  • react 18.2.0
  • react-dom 18.2.0
  • react-native 0.73.6
  • react-native-web ~0.19.10
  • @babel/core ^7.24.4
apps/scraper/package.json
  • crawlee ^3.0.0
  • playwright 1.43.1
package.json
  • @apify/tsconfig ^0.1.0
  • @babel/core ^7.24.0
  • @config-plugins/detox ^7.0.0
  • @ianvs/prettier-plugin-sort-imports ^4.1.1
  • @nestjs/cli ^10.3.2
  • @nestjs/schematics ^10.1.1
  • @nestjs/testing ^10.3.3
  • @next/eslint-plugin-next ^14.1.0
  • @plasmohq/prettier-plugin-sort-imports 4.0.1
  • @types/chrome 0.0.266
  • @types/eslint ^8.56.5
  • @types/express ^4.17.21
  • @types/jest ^29.5.12
  • @types/node ^20.11.24
  • @types/react ^18.2.61
  • @types/react-dom ^18.2.19
  • @types/supertest ^6.0.2
  • @typescript-eslint/eslint-plugin ^7.1.0
  • @typescript-eslint/parser ^7.1.0
  • @vitejs/plugin-react ^4.2.1
  • autoprefixer ^10.4.17
  • babel-preset-expo 10.0.1
  • detox ^20.18.3
  • electron ^29.1.0
  • electron-builder ^24.12.0
  • eslint 8.57.0
  • eslint-config-prettier ^9.1.0
  • eslint-config-turbo ^1.12.4
  • eslint-plugin-import ^2.29.1
  • eslint-plugin-jsx-a11y ^6.8.0
  • eslint-plugin-react ^7.33.2
  • eslint-plugin-react-hooks ^4.6.0
  • jest ^29.7.0
  • lefthook ^1.6.4
  • postcss ^8.4.35
  • prettier ^3.2.5
  • prettier-plugin-tailwindcss ^0.5.11
  • source-map-support ^0.5.21
  • supertest ^6.3.4
  • tailwind-merge ^2.2.1
  • tailwindcss ^3.4.1
  • tailwindcss-animate ^1.0.7
  • ts-jest ^29.1.2
  • ts-loader ^9.5.1
  • ts-node ^10.9.2
  • tsconfig-paths ^4.2.0
  • tsup ^8.0.2
  • tsx ^4.7.1
  • turbo ^1.11.3
  • typescript 5.4.5
  • vite ^5.1.4
  • vite-plugin-electron ^0.28.2
  • vite-plugin-electron-renderer ^0.14.5
  • node >=18
  • pnpm 9.0.0
packages/ui/package.json
  • @radix-ui/react-checkbox ^1.0.4
  • @radix-ui/react-dropdown-menu ^2.0.6
  • @radix-ui/react-label ^2.0.2
  • @radix-ui/react-popover ^1.0.7
  • @radix-ui/react-slot ^1.0.2
  • class-variance-authority ^0.7.0
  • clsx ^2.0.0
  • date-fns ^3.0.6
  • lucide-react ^0.368.0
  • react ^18.2.0
  • react-day-picker ^8.9.1
  • react-dom ^18.2.0
  • tailwind-merge ^2.2.0
tooling/eslint/package.json
tooling/github/package.json
tooling/prettier/package.json
tooling/typescript/package.json

  • Check this box to trigger a request for Renovate to run again on this repository

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.