Skip to content

Latest commit

 

History

History
92 lines (54 loc) · 3.69 KB

CONTRIBUTING.md

File metadata and controls

92 lines (54 loc) · 3.69 KB

Contributing to MemFree

Thank you for considering contributing to MemFree! We appreciate your support and the time you're taking to make MemFree better. Here’s a guide to help you get started with your contributions.

How to Contribute

  1. Open an New Issue: If you believe you've encountered a bug, please open an issue with detailed information.

  2. Resolve any Issue: You can resolve any issue mentioned in issue section by getting assigned to yourself and start contributing by making PR mention the issue number.

  3. Make a Pull Request: If you have new features to add, quality-of-life improvements, or bug fixes, feel free to make a pull request. Ensure your code adheres to our code style and includes appropriate tests.

  4. Feedback and Support: Share your thoughts and feedback on our Discord or via the MemFree Feedback Form.

Code Style and Formatting

To maintain consistency across the codebase, please ensure you run the following command before submitting a pull request:

npm run prettier

Features You Can Contribute

  • Search Engines and AI Models: Integrate additional search engines or AI models to enhance search capabilities.
  • File Format Support: Add support for new file formats (e.g., TXT, PDF, DOCX, PPTX, Markdown).
  • Multi-Language Support: Expand language support beyond English, Chinese, German, French, Spanish, Japanese, and Arabic.
  • Bookmark Sync and Indexing: Improve or add features related to Chrome bookmarks sync and indexing.

Setup Instructions

Prerequisites

Before contributing, ensure you have the following set up:

  • Bun: Install Bun via curl -fsSL https://bun.sh/install | bash
  • Upstash Redis: Create a Redis compatible database via Upstash Redis
  • OpenAI API Key: Get your API key from OpenAI
  • Serper API Key: Obtain an API key from Serper

Frontend Setup

cd frontend

bun icp env-example .env

bun run dev

Vector Service Setup

cd vector

bun i

bun run index.ts

Extension Setup

cd extension

bun i

bun run build

Testing Guidelines

Please refer to the Testing Guidelines for details on how to test your changes.

One-Click Deployment

MemFree offers a straightforward one-click deployment process:

Deploy Backend with Zeabur: Deploy on Zeabur

Deploy Frontend with Vercel: Deploy with Vercel

One Command Deploy Backend with Fly.io: One command deploy MemFree Vector on Fly.io

Roadmap

To get a sense of our planned features and improvements, check out our Roadmap.

License

MemFree is backed by MemFree and licensed under the MIT license. See the LICENSE file for details.

Happy contributing!