Code Monkey home page Code Monkey logo

sharuco's Introduction

Sharuco

Share your code. Manage Form & Link.

Features

Requirements

  • Node (>=18.18.0 recommended) + npm
  • docker + docker-compose
  • make (for Makefile targets)

How to Install

# clone the repository and cd into it:
git clone https://github.com/ln-dev7/sharuco && cd sharuco

# Tips : make help to see all make target

## --- WITH DOCKER ---
# build and up the whole stack and start it with one command:
# note, all env are available in the example
make docker-build-up

# to build the app container only:
make docker-build

# to run the app container:
make docker-run

## --- NO DOCKER ---
# copy the .env.example to .env and fill all env variables
cp .env.example .env

#   - `NEXT_PUBLIC_FIREBASE_API_KEY`: Your Firebase API Key.
#   - `NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN`: Your Firebase Auth Domain.
#   - `NEXT_PUBLIC_FIREBASE_PROJECT_ID`: Your Firebase Project ID.
#   - `NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET`: Your Firebase Storage Bucket.
#   - `NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID`: Your Firebase Messaging Sender ID.
#   - `NEXT_PUBLIC_FIREBASE_APP_ID`: Your Firebase App ID.
#   - `NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID`: Your Firebase Measurement ID.

# Install dependencies:
make install

# build and start
make build && make start

# or on dev mode
make dev

Usage

The application is accessible at http://localhost:3000/.

Contributing

Contributions are welcome! To contribute, follow these steps:

  1. Fork the repository.
  2. Create a branch for your contribution with git checkout -b my_new_feature.
  3. Make your changes.
  4. Submit a pull request on master branch.

License

This project is licensed under the MIT License.

Credits

  1. Frontend: Next.js
  2. DataBase / Auth: Firebase
  3. Hosting: Vercel
  4. UI : UI Shadcn ( Tailwind CSS + Radix UI )
  5. Tools: React Query, React Hook Form

sharuco's People

Contributors

alfredmouelle avatar ayenbonsoa avatar dependabot[bot] avatar ln-dev7 avatar mckenziearts avatar sanix-darker 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  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

sharuco's Issues

Expandable snippet card

Add expand icon on snippet card to have the code in fullscreen instead of scrolling horizontally.

Screen Shot 2023-04-01 at 07 28 39

Delete code

Possibility of deleting a code, knowing that the deletion must remove the id of the code in the favorites field of the users who have added the code in favorites.

Popular code

implement the popular code page,
The goal is to display the 30 codes that have the highest number of favorites.
This page will be available when the application already has more than 50 codes

IDE integration

I would be also useful to have sharuco integration in IDE like vscode. Developers can simply select code snippet and share directly from their code editor

Edit code

Add the possibility to edit the information of its code, knowing that if it changes the isPrivate from true to false it must lose all the favorites that the code has had and all the users who have bookmarked this code, in their favorites field we must remove the id of this code

Improving Project Efficiency with Guidelines and Templates

By adding these following; 👇🏾

Contribution Guidelines: Establishing clear guidelines for contributions can help standardize the process and ensure that all contributors are following the same conventions. This could include coding conventions, issue tracking, pull request workflows, and other relevant information.

Code of Conduct: Adding a code of conduct to the project can help create a safe and welcoming environment for all contributors. The code of conduct can outline expectations for behavior, provide guidelines for reporting and handling conflicts, and help establish a positive and inclusive community.

Issue Templates: Creating templates for submitting issues can help guide users in providing clear and concise information. This could include sections for issue titles, descriptions, steps to reproduce, and any other relevant information.

Pull Request Templates: Creating templates for submitting pull requests can help ensure that contributors include all the necessary information in their requests. This could include sections for a description of the changes made, any potential impacts, and any relevant links or references.

Explore page codes not readable

The content of the code blocs on explore page is not adapted to the blocs' width, and that makes the user slide to see the full content, spoiling the user experience.

Icons shrink

The header profile icon is stretched on mobile

Device: iphone 7 plus

82B4D253-A1C1-423A-BFAA-2596A68FDC78

Feature request: Possibility to see the date when the code was added

Hey, thank you very much for Sharuco. Very nice concept. I just tried it out, and I thought it might be interesting for the users to see when a code has been added. This will be especially helpful when sometimes, the syntax has changed in a language, making some codes obsolete...

The github gist guide page can't be fetch

Reproduce error:

  • Open sharuco main page and sign in
  • Go to your dashboard and Try to add a new code
  • When the message (You cannot publish code on your Github Gist because you have not yet followed this guide.) click on the word "guide" highlight

Screenshot from 2023-04-23 20-08-16

Search code

Implement the possibility to search a code according to the description and according to the language, the search must be available on the pages "/explore" , "/dashboard" , "/user-id"

Please use SearchCode component ( /components/search-code.tsx )

UX improvements

Add and "Click Away Listener" for some popup or dailog modal who need it for a better ux. For example, once the link has been copied, it would be interesting if the popup closed directly, I also find it important that the user closes this popup by clicking elsewhere
Capture d’écran 2023-04-22 à 09 00 52

Here, we have successfully modified his code but the user still has to click on "Cancel" to close the form, I think it should close automatically after the success of the operation.

Capture d’écran 2023-04-22 à 09 04 31

Here, we have successfully added a code but the form is still present, I think it should close automatically. If the idea is to allow multiple codes to be added, I suggest adding a checkbox to ask the user if he wants to leave the form open.
Capture d’écran 2023-04-22 à 09 07 55

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.