Giter Club home page Giter Club logo

flow.nvim's Introduction

🌊 Flow

logo

Flow is an Nvim color scheme designed for transparent or dark backgrounds. It features carefully designed colors to help focusing during coding plus fluorescent details to provide a vibrant environment. Why fluo? Because it is cool!

Showcase

terminal

terminals

Palette

Flow has been designed using a palette based on nine colors selected through the HSL representation to create a cohesive ambiance. The principal color is light blue, and the additional colors have been chosen as follows:

  • Analogous (S+/-30): blue, cyan.

  • Complementary (S+/-180): orange.

  • Tetradic 60 (S+/-60): purple, green.

  • Slit comp (S+/-150): yellow, red.

Furthermore, teal has been included to enhance the blue tones, and a fluorescent color has been added for striking accents. The palette is defined across three different levels of light:

Bright Normal Dim
80 70 30

palette

Requirements

Installation

Install the theme with your preferred package manager, such as folke/lazy.nvim:

{
  "0xstepit/flow.nvim",
  lazy = false,
  priority = 1000,
  opts = {},
}

Usage

require("flow").setup{}
vim.cmd "colorscheme flow"

Configuration

Default

The configuration allows to specify 4 different options:

return {
  "0xstepit/flow.nvim",
  lazy = false,
  priority = 1000,
  opts = {},
  config = function()
    require("flow").setup{
      transparent = false, -- Set transparent background.
      fluo_color = "pink", --  Fluo color: pink, yellow, orange, or green.
      mode = "normal", -- Intensity of the palette: normal, bright, desaturate, or dark. Notice that dark is ugly!
      aggressive_spell = false, -- Display colors for spell check.
    }

    vim.cmd "colorscheme flow"
  end,
}

Suggested

My favorite config
return {
  "0xstepit/flow.nvim",
  lazy = false,
  priority = 1000,
  opts = {},
  config = function()
    require("flow").setup{
      transparent = true,
      fluo_color = "pink",
      mode = "normal",
      aggressive_spell = false,
    }
    vim.cmd "colorscheme flow"
  end,
}

Supported plugins

Below the list of supported plugins divided by category:

Extras

Flow.nvim provides colorschemes also for the following tools:

Todo

This is still an ongoing project. Below are the next topics I will work on:

  • Add docs.

  • Extra automatic generation.

Contributing

Pull requests and improvement suggestions are very welcome!

References

My dot config 0xstepit/dotfiles.

This colorscheme is inspired by other amazing colorscheme:

flow.nvim's People

Contributors

0xstepit avatar github-actions[bot] avatar

Stargazers

Trevor Nei avatar Nick avatar Douglas J Hunley avatar  avatar James Lingford avatar Clarence avatar  avatar Philip Trauth avatar  avatar Abe Estrada avatar Iain Simmons avatar Adam C. Stephens avatar Apile Tyumre avatar Kristof Lünenschloß avatar vadim avatar Hugo Lewenhaupt avatar Oleh Vanin avatar Anatoly avatar Muiz Oyebowale avatar Xie Zejian avatar Vaso Putica avatar  avatar DGames avatar Rodrigo Pires avatar ttuijn avatar Tim Richter avatar Ben Frain avatar Brent Williams avatar gldtn avatar Viv Sedov avatar Julian avatar Jesse Kearl avatar  avatar Cory Hall avatar Specter avatar Peeranut Pongpakatien avatar Kent Tonino avatar Leroy Davidson Descelles avatar  avatar Ajay Mamtora avatar Alexis avatar Wei Tan avatar Kevin avatar Mrinmoy avatar  avatar  avatar Maximilian Sören Pollak avatar kohane27 avatar Yuto Tanaka(Work) avatar Daniel avatar Fenja Louwrens avatar ByteMaster avatar  avatar Jacopo Ghisolfi avatar Kenzo Wada avatar  avatar  avatar Simen Berge avatar Oka Wibawa avatar Yakedo avatar Eric Dattore avatar Matej Focko avatar Max Langer avatar MiniApple avatar William Engman avatar Robby avatar Adelar da Silva Queiróz avatar O. Tadashi avatar Julian Torres avatar Ezra avatar Tvrtko Babić avatar Josh avatar zakwan hisham avatar Cellan Hall avatar Cal avatar jwy avatar wumou avatar Nikhil R avatar  avatar João avatar Nick avatar Alex P. avatar Jose Velazquez avatar Matthew King avatar KevinHsiau avatar mybeky avatar  avatar Trong avatar Evgeny Kapusta avatar Sean avatar Rodrigo Stuchi avatar xue avatar Filip Jaskovic avatar  avatar Bruno Ferreira de Oliveira avatar lychee avatar Matt James avatar tooi avatar Darren Reddy avatar next avatar

Watchers

 avatar

Forkers

ameerarsala

flow.nvim's Issues

Default config causes an error

Did you check docs and existing issues?

  • I have read all the flow.nvim docs
  • I have searched the existing issues of flow.nvim
  • I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)

N/A

Operating system/version

MacOS

Describe the bug

The default config in the readme leads to an error. This is caused by setting the name to "Flow" but then attempting to require("flow"). This leads to an error on startup, since we're attempting to call setup() on a nil value. Can be fixed simply by leaving out the name property

Here is the received error:

Failed to run `config` for Flow

/Users/niels/.config/nvim/lua/plugins/theme.lua:24: attempt to call field 'setup' (a nil value)

# stacktrace:
  - lua/plugins/theme.lua:24 _in_ **config**
  - lua/config/lazy.lua:19
  - init.lua:74

Steps To Reproduce

Use the following config (from the docs):

return {
  "0xstepit/flow.nvim",
  name = "Flow",
  lazy = false,
  priority = 1000,
  opts = {},
  config = function()
    require("flow").setup{
      transparent = false, -- Set transparent background.
      fluo_color = "pink", --  Fluo color: pink, yellow, orange, or green.
      mode = "normal", -- Intensity of the palette: normal, dark, or bright. Notice that dark is ugly!
      aggressive_spell = false, -- Display colors for spell check.
    }

    vim.cmd "colorscheme flow"
  end,
}

Expected Behavior

It should setup, but doesn't.

Repro

-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "0xstepit/flow.nvim",
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("flow")
-- add anything else here

Doc is not displayed

Did you check docs and existing issues?

  • I have read all the flow.nvim docs
  • I have searched the existing issues of flow.nvim
  • I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)

0.10.0

Operating system/version

MacOS Sonoma 14.3

Describe the bug

Doc is not working.

Steps To Reproduce

:h flow

Returns:

E149: Sorry, no help for flow.

Expected Behavior

Display the doc for the colorscheme.

Repro

No response

bug: Wiggly lines at rust method and macro calls

Did you check docs and existing issues?

  • I have read all the flow.nvim docs
  • I have searched the existing issues of flow.nvim
  • I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)

v0.11.0-dev-387+g158ffd646 -> With Neovide

Operating system/version

Win 11

Describe the bug

Hey,
I just tried your colorscheme and really like it! There is just one thing which is kinda distracting IMHO.

Wiggly lines

If I use Neovide + Rust, many method and macro calls get some wiggly red lines below them.
image

LSP messages get the straight underline:
image

In Alacritty + NVIM + Rust they just get underlines, which most likely is the expected behavior:
image

Also the LSP messages get the straight underline:
image

Because my brain is wired to see wiggly lines as spelling or code mistakes, this is kinda distracting.

Dark blue contrast

Maybe this should be a different issue/suggestion, but the dark blue for function/method names could be a tad brighter for improved readability? The contrast to the background is a bit low, at least without a transparent background.

Best regards

Steps To Reproduce

  1. Install Neovide
  2. Use lazy.nvim
  3. Add this repo as a plugin

Expected Behavior

No wiggly lines in Neovide for method and macro calls but for the LSP warnings these would be nice, if not necessary.

Repro

I use lazy.nvim with the colorscheme plugin with the following content of the colorscheme.lua:

return {
  {
    "0xstepit/flow.nvim",
    lazy = false,
    priority = 1000,
    opts = {},
    config = function()
      require("flow").setup({
        transparent = false,
        fluo_color = "pink",
        mode = "normal", -- "bright", "normal", "dim"
        aggressive_spell = false,
      })
    end,
  },

  {
    "LazyVim/LazyVim",
    opts = {
      colorscheme = "flow",
    },
  },
}

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.