8000 GitHub - saurabhssonkar/flexile
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

saurabhssonkar/flexile

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flexile

CI License: Flexile Community License

Payroll & equity for everyone.

Features

  • Onboard contractors and employees with custom docs
  • Manage regular and one-off invoices
  • Process payments globally
  • Offer and distribute equity as part of compensation
  • Track team performance, updates and absences
  • Handle tax compliance
  • Integrate with other tools like QuickBooks Online
  • Manage your cap table and send company updates to investors

Table of Contents

Setup

Prerequisites

  • Docker for Desktop
  • Ruby (version specified in .ruby-version)
  • Node.js (version specified in .node-version)

Installation

The easiest way to set up the development environment is to use the provided setup script:

bin/setup

This script will:

  1. Install Homebrew (if not already installed)
  2. Install RVM and the correct Ruby version
  3. Install PostgreSQL and create the development database
  4. Enable corepack and install pnpm dependencies
  5. Install Ruby gems with Bundler
  6. Install Foreman for process management
  7. Link your Vercel environment and pull environment variables

Setup custom credentials

Copy .env.example to .env and fill in the values:

cp .env.example .env

Then edit .env with your custom values.

Running the App

Start the Docker services for local development:

# In one terminal tab
make local

# Use LOCAL_DETACHED=false make local if you prefer to run Docker services in the foreground

Set up the database (if running for the first time) and start the development server:

# In another terminal tab
rails db:setup # if running for the first time
bin/dev

Once the local services are up and running, the application will be available at https://flexile.dev

Use the credentials generated during db:setup to log in.

Helper widget

To run the Helper widget locally, you'll also need to run the Helper app locally. By default, the development environment expects the Helper Next.js server to run on localhost:3010. Currently, the Helper host is set to port 3000. You can update the port by modifying bin/dev and apps/nextjs/webpack.sdk.cjs inside the Helper project to use a different port, such as 3010.

You can update the HELPER_WIDGET_HOST in your .env file to point to a different host if needed. The widget performs HMAC validation on the email to confirm it's coming from Gumroad. Update the helper_widget_secret in the credentials to match the one used by Helper.

Testing

# Run Rails specs
bundle exec rspec # Run all specs
bundle exec rspec spec/system/roles/show_spec.rb:7 # Run a single spec

# Run Playwright end-to-end tests
pnpm playwright test

Contributing

We welcome contributions to Flexile! Please read our Contributing Guide for information on how to get started, coding standards, and more.

Please note that this project adheres to a Code of Conduct. By participating in this project, you agree to abide by its terms.

License

Flexile is licensed under the Flexile Community License.

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 56.6%
  • TypeScript 37.9%
  • JavaScript 3.6%
  • HTML 1.5%
  • Shell 0.2%
  • CSS 0.1%
  • Other 0.1%
0