Infisical — Sync your .env securely in seconds.

Overview

Infisical

Infisical is a simple, end-to-end encrypted secrets manager for your .env files. It enables teams to securely sync and manage .env files in seconds.

What's New

Infisical combines simplicity with security. With git-like commands and end-to-end encryption, Infisical is easy to use and super secure — no one (not even us) can read your dearest secrets.

Usage

Head over to https://infisical.com/ to make an account and shared workspace for your team.

Login via CLI:

npx infisical login

Connect the folder containing your .env file to the workspace:

npx infisical connect [workspace id]

Push your .env file to the workspace:

npx infisical push [environment]

Pull the latest .env file from the workspace:

npx infisical pull [environment]

Note that the environment argument for the push/pull commands accepts 3 possible inputs: dev, staging, and prod

Voila!

How It Works

Infisical uses end-to-end encryption to securely store and share secrets. It uses secure remote password (SRP) to handle authentication and public-key cryptography for secret sharing and syncing; your secrets are symmetrically encrypted at rest by keys decryptable-only by intended parties in your team. Put simply, rest-assured we've put measures in place so that secrets remain your-eyes-only - all while making minimal user-experience trade-offs.

For a fuller discussion on how it works, head to our website: https://infisical.com/

Comments
  • Localize Web UI #39

    Localize Web UI #39

    Check Lists

    • [x] Setup localization module
    • [x] Move texts to json file
    • [x] Translate english into korean
    • [x] Resolve Conflict
    • [x] Language select in Login page and setting page

    What changed and added?

    package.json

    • next-translate for support multi languages.

    Locale files in frontend/locales

    All language files are located under frontend/locales/{language}.json. Language file is like this;

    {
      "namespace": {
         "key": "value",
         "nested-key": {
           "key": "nested-value"
        }
      }
    }
    

    Texts in frontend/pages/ and frontend/components

    import useTranslation from "next-translate/useTranslation";
    ......
     const { t } = useTranslation("");
     ......
     <div>{t("common:hello")}</div>
     ......
    

    Define namespaces and locales in frontend/i18n.js

    Defines the namespaces to use per page

    docker-compose.dev.yml

    https://github.com/gangjun06/infisical/blob/4c94ddd1b2635143ef93c941962c2bd29dfdd828/docker-compose.dev.yml#L52-53 To change language files without recreate full container with just restart, Added this lines.

    Translate key convention?

    I didn't make it clearly, but i followed some rules.

    • use - for space in key.
    • seperate namespace by page and section.
    • make keys simple as possible

    ETC

    For vscode, i18n-ally is very useful plugin for translated file. It can be able to preview value of the translate key.

    opened by gangjun06 14
  • Backend test setup

    Backend test setup

    • Initial test configuration
    • Sample test (just the healthcheck endpoint for now)
    • Moved things from index.ts to separate parts for easier test setup
    • Initial coverage configuration
    • GH Action workflow
      • Modified Backend PR check to run test
      • New workflow to post comment/report of test result and coverage to PR (Note: this new workflow will not successfully run until merged into target main branch)

    Sample:

    Test result: image

    Coverage annotations: image

    Note: some files were automatically modified by prettier on commit (husky?).

    opened by reginaldbondoc 7
  • Ordering when pushing and pulling is not kept

    Ordering when pushing and pulling is not kept

    We have an issue in my team, when we add envs that depends on others, we need dependencies came after the source env, so sometime we reorder them, or even grouping them by microservice by adding comments (monorepo), but the order is absolutely not kept and same for comments. So each time we pull envs we have to reorder them and add comments.

    To be honnest, commenting is not critical, but reordring each time the envs is really annoying.

    🚀 feature request 🛠 work in progress 
    opened by abdalem 7
  • CLI raising error on email validation

    CLI raising error on email validation

    HI. I have an issue about email validation when installing the new CLI. It raise an exception on my email that ending with .tech domain. The exception thrown is the following: >> this doesn't look like an email address

    🐞 bug good first issue 
    opened by abdalem 7
  • .NET integration

    .NET integration

    Feature description

    An integration with .NET's configuration tooling would be great to see.

    Why would it be useful?

    There's a lot of .NET projects out there that could benefit from this.

    opened by gbro3n 6
  • Add comments to secrets

    Add comments to secrets

    Feature description

    In traditional .env files, it is possible to add comments that explain certain things about environment variables. It would be amazing if Infisical had something like 'comments/notes' that can be attached to every environment variable.

    Why would it be useful?

    Sometime people want to add reminders or explanations to certain environment variables.

    Additional context

    This would require both frontend and backend work

    🚀 feature request 
    opened by mv-turtle 5
  • Infisical command not found when i try to deploy the application on vercel

    Infisical command not found when i try to deploy the application on vercel

    Describe the bug

    I connect the infisical to my project and run locally, but when I do the push in my nextJs project, I can't deploy because vercel say to me insifical command not found how can I deploy without this error?

    To Reproduce

    Steps to reproduce the behavior:

    1. Add Infisical to the project following the documentation
    2. Make the Git Push
    3. See vercel fall in the caos because they dont know the command infisical
    4. See error

    Expected behavior

    vercel use the infisical secrets env or use they own secrets env, or show me how to set up the infisical with vercel

    Screenshots

    Screen Shot 2022-12-09 at 11 50 31 AM

    Platform you are having the issue on:

    MacOs BigSur, Vercel, NextJs

    question 
    opened by DarlonHenrique 5
  • Support for monorepos

    Support for monorepos

    Feature description

    We use Turborepo for our monorepo (a repository that has multiple packages and projects inside it). This means our web apps are inside subfolders, e.g. /apps/webapp/.

    We need different environment variables for the different projects. So, we would like to have an Infisical project for each of those.

    it would be great if the Infisical CLI could be run on the root folder of a monorepo and grab all the environment variables from the sub-projects and inject them.

    Why would it be useful?

    It would mean Infisical works with monorepos, made with tools like Turborepo and NX.

    Go Lang 
    opened by matt-aitken 5
  • Add error notifications on saving secrets

    Add error notifications on saving secrets

    Feature description

    Right now, if you have duplicated secret names (or if a secret name starts with a number), you will not be able to save these secrets to the database. Users have a visual indication of an error (wrong secret names turn red). However, when they try to save, nothing happens. It would be ideal to show a notification saying "Your secrets weren't saved, please fix the conflicts first."

    Why would it be useful?

    This is especially useful if users have many secrets. They might not even know that they have some errors. However, they would see a notification as described above.

    good first issue help wanted ✨ UX 
    opened by mv-turtle 5
  • UI bug with dots overflowing on the DashboardInputField

    UI bug with dots overflowing on the DashboardInputField

    Bug Description

    The dots that show up over a secret when it's not hovered, can sometimes go outside of the input field. I tried a bunch of options but couldn't get the desired result easily with our current setup. I think the whole structure of how we generate those dots could be rethought. It's currently very lengthy and suboptimal. This is the file that would have to be changed.

    To Reproduce

    Steps to reproduce the behavior:

    1. Add a long key value
    2. Decrease your browser size if needed
    3. See error

    Expected behavior

    It should be the bahavior like "overflow-hidden" in tailwind

    Screenshots

    Screenshot 2022-11-25 at 11 06 20 🐞 bug good first issue help wanted 
    opened by mv-turtle 5
  • Unable to pull variables in manual sync approach

    Unable to pull variables in manual sync approach

    Hey there,

    I was following Infisical's doc and, at first, tried the auto sync approach in my NestJS project. Everything seemed to work fine (it asked for credentials and the project's ID), but the .env.infisical file content was just the project ID and no variables.

    So then I tried the manual approach where I emptied the env file and executed npx infisical pull dev, and as a result, I got the following message: The "path" argument must be of type string. Received undefined. This time no info about credentials or project ID was asked (maybe because I informed it in the previous step?). Also, the env file remained empty.

    opened by neyara 5
  • Dashboard hotfix - Abstract Dashboard into more reusable parts

    Dashboard hotfix - Abstract Dashboard into more reusable parts

    Description

    Abstract Dashboard into more reusable parts Fixes: #118

    Changes & Features:

    • We pass the keypair list into an intermediary component that manages the keypair list (data) side effects. e.g filter.
    • Pass the helpers and handlers into a context, at the moment we are prop drilling.
    • Move the helper Fns into a separate file

    Type of change

    • New feature (non-breaking change which adds functionality)
    opened by LemmyMwaura 0
  • add ability to import/export secrets with comments

    add ability to import/export secrets with comments

    closes #74

    few things to note:

    • it would be better if some functions are moved to separate files like getSecrets and checkOverrides
    • I used Menu as a dropdown menu from headless/ui, I think it would be better if it's extracted to a reusable component for future use
      • there is an issue with the dropdown menu, the menu doesn't close after a button is clicked. i'm investigating this issue at the moment
    • it would be better the onButtonPressed prop from Button component is optional so it can be used as a trigger like the case above
    opened by mocherfaoui 0
  • [Snyk] Upgrade @stripe/stripe-js from 1.36.0 to 1.46.0

    [Snyk] Upgrade @stripe/stripe-js from 1.36.0 to 1.46.0

    Snyk has created this PR to upgrade @stripe/stripe-js from 1.36.0 to 1.46.0.

    :information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


    • The recommended version is 13 versions ahead of your current version.
    • The recommended version was released a month ago, on 2022-12-02.

    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

    For more information:

    🧐 View latest project report

    🛠 Adjust upgrade PR settings

    🔕 Ignore this dependency or unsubscribe from future upgrade PRs

    opened by snyk-bot 0
  • ci: auto build and tag images

    ci: auto build and tag images

    Currently all docker images are tagged with latest and overwritten on new builds. This is a bit problematic in production environments since it prevents version control.

    I'd like to propose this build pipeline for the docker images.

    The pipeline will be triggered automatically on a new tag and create images with the according tags. Pull requests to main will trigger the pipeline but only to test if the image still works. The image wont be pushed to dockerhub.

    The docker image with tag latest will always be the latest tag on github. Builds triggered by workflow_dispatch will have the tag main.

    opened by jon4hz 2
  • Helm updates

    Helm updates

    Hey, I was missing some configuration options while deploying infisical with helm.

    The following features were added:

    • support for custom annotations
    • support for custom service type for the frontend
    • allow image image overrides

    I also added some default helper templates and refactored the naming, labeling and selectors in a more "helmish" way. Your service currently uses selectors like app=backend which isn't very unique and could lead to troubles, e.g. if more than one infisical installation is running in the same namespace.

    opened by jon4hz 2
Releases(v0.1.16)
Autocompletion, in-code secret peeking 🔎, syncing, and more, for your .env files in VSCode. 👑 From the same people who pioneered dotenv.

Dotenv Official (with Vault) for VSCode Official Dotenv. Syntax highlighting, autocompletion, in-code secret peeking, and .env file syncing with Doten

Dotenv 38 Dec 19, 2022
Open-source API to securely share data with customers.

Offer secure data pipelines to your customers' data warehouses, directly from your product. Slack · Website · Docs About Pipebird Direct, secure, and

Pipebird 169 Dec 23, 2022
Export AWS SSM Parameter Store values in bulk to .env files

aws-parameter-bulk Utility to read parameters from AWS Systems Manager (SSM) Parameter Store in bulk and output them in environment-file or json forma

Adam Malik 18 Oct 18, 2022
Multiple `.env` file supported.

Features Support multiple .env files and keep the inheritance Priority: local > not unassigned local mode > not unassigned mode e.g. .env.{{mode}}.loc

Tianyu Li 67 Oct 31, 2022
Loads environment variables from .env for nodejs projects.

dotenv Written in typescript, full testing. It can loads environment variables from a .env file into process.env or parse <key>=<value> string Install

Berlin 102 Sep 23, 2022
🔑 Loads environment variables from .env for nodejs projects with safe

env-safe env-safe is module that loads that loads environment variables from a .env file into process.env with type-safe. And can also validate the ty

Creatrip 9 Dec 28, 2022
Create your own NFTs within seconds 🪄

MagicaNFT An automated process to create a number of NFTs At the moment, the program only makes pixelated NFTs, with only a certain number of characte

Jaival Patel 2 Feb 3, 2022
🔥 Set up your new Solid component library in seconds!

Create Solid Library Create SolidJS libraries with ease! Usage npx create-solid-library <name> Development Developing components is often a visual pro

blusk 6 Oct 28, 2022
Automatically sync your leetcode solutions to your github account - top 5 trending GitHub repository

LeetHub - Automatically sync your code to GitHub. Top 5 Trending JavaScript Repositories Available on: What is LeetHub? A chrome extension that automa

Qasim Wani 2.8k Dec 31, 2022
This tool allows you to test your chains.json file to see if your chains are available, syncing, or in sync.

Chains Tester This tool allows you to test your chains.json file to see if your chains are available, syncing, or in sync. This is an open source tool

Jorge S. Cuesta 9 Nov 4, 2022
Sync your personal calendar to your work calendar, privately 🐒

Callibella ?? It is considered unusual among Callibella in that it gives birth to only a single baby instead of twins, the norm for Callibella. Wikiep

Yo'av Moshe 19 Oct 12, 2022
🚀AI拟声: 5秒内克隆您的声音并生成任意语音内容 Clone a voice in 5 seconds to generate arbitrary speech in real-time

English | 中文 Features ?? Chinese supported mandarin and tested with multiple datasets: aidatatang_200zh, magicdata, aishell3, and etc. ?? PyTorch work

Vega 25.6k Dec 29, 2022
Get started on Remix with TypeScript and Tailwind CSS in seconds

remix-typescript-tailwind-quickstart Get started on Remix with TypeScript and Tailwind CSS in seconds. This is an example setup of Remix building on t

Resi Respati 12 Mar 16, 2022
Get any Candy Machine ID in seconds with this npm module!

What Does it do? Grabs Candy Machine ID of any v1 or v2 candy machine websites. Installation npm i candymachinescraper --save Example Usage // Get Can

Oscar Gomez 9 Oct 26, 2022
Deploy a local project to Replit, in seconds!

mvrepl A tool to deploy a local project to replit, in seconds! Requirements: latest version of Node.js (https://nodejs.org/) latest version of npm (ht

grr 5 Jun 18, 2022
How to create 1,000 videos in 60 seconds

How I built 1,000 personalised videos in 60 seconds In this article, we will show you how to build 1,000 personalized birthday videos for 1,000 differ

Shotstack 19 Dec 9, 2022
Create 💎 beautiful video mockups from templates withing ⏳ seconds

?? Mockoops Create animated mockups from boring screen recordings in seconds, powered by React. ⚡️ Superfast rendering powered by Serverless Functions

Mohit Yadav 185 Jan 6, 2023
A jQuery plugin that creates a countdown timer in years, months, days, hours and seconds in the form a bunch of rotating 3d cubes

CountdownCube is a jQuery plugin that is in the form of a bunch of rotating 3D cubes. It uses CSS transitions to create the 3D rotating cube effects.

null 16 Mar 6, 2022
⏬ Fetch the most up-to-date ABI of verified Smart Contracts (including proxy implementations) from Etherscan in seconds!

etherscan-abi ⏬ ?? Fetch the most up-to-date ABI of verified Smart Contracts (including proxy implementations) from Etherscan in seconds! Usage CLI Fe

Romain Milon 6 Dec 27, 2022