Giter Club home page Giter Club logo

vimcolorschemes's Introduction

vimcolorschemes logo

Find the best vim color schemes around


docs.vimcolorschemes.com


visitors stars version license All contributors

Gatsby React Typescript Scss MongoDB Jest Testing library Golang Amazon AWS


demo light background demo dark background

Welcome πŸŽ‰

vimcolorschemes is a small constellation of projects working on the common goal of building the ultimate resource for vim users to find the perfect color scheme for their development environment.

The focus here is always on the content. The simple design of the website makes the color schemes the focal point of every page. Speed and accessibility are also part of the core mission of vimcolorschemes.

Key features πŸš€

  • Daily updated list of hundreds of vim color scheme repositories
  • Awesome vim (h, j, k, l) key bindings to quickly navigate through the whole site

Get Involved

vimcolorschemes is aimed to be a collaborative project, and you are invited to help. All types of involvement are welcome!

Developers, check out the development guide to start writing code and contribute.

Issues

Bugs and feature requests are welcome. Make sure to follow the issue template before posting.

Credits ✨

Credit goes to all the creators of vim color schemes around GitHub πŸŽ‰

Thanks also goes to these wonderful people (emoji key):

Robin Gagnon
Robin Gagnon

πŸ’» 🎨 πŸ“– 🚧 πŸš‡
Tsubasa Ogawa
Tsubasa Ogawa

πŸ’»
Alexander Mykolaichuk
Alexander Mykolaichuk

πŸ’» πŸ€”
Loris Bettazza
Loris Bettazza

πŸ’» πŸ€”
Mukesh Suthar
Mukesh Suthar

πŸ’»
Vitor Freitas
Vitor Freitas

πŸ’» πŸ€”
Rishav
Rishav

πŸ’»
Gabriel Laroche
Gabriel Laroche

πŸ’»
Irina Karmanova
Irina Karmanova

πŸ’»
Leon
Leon

πŸ›
M. Bellucci
M. Bellucci

πŸ’»
Hardik Modi
Hardik Modi

πŸ’»
Pedro Correa
Pedro Correa

πŸ’»
indremak
indremak

πŸ’»
PΓ’mela G.
PΓ’mela G.

πŸ’» πŸ“–
Aniruddha Shriwant
Aniruddha Shriwant

πŸ’»
Yuriy Rymarchuk
Yuriy Rymarchuk

πŸ’» ⚠️
Prerna Mehra
Prerna Mehra

πŸ’» ⚠️
Lucas Arvelo
Lucas Arvelo

πŸ’»
adrian5
adrian5

πŸ›
Iron-E
Iron-E

πŸ€”
Lee Warnock
Lee Warnock

πŸ’» πŸ“–
armspkt
armspkt

πŸ’»
A Serputov
A Serputov

πŸ’»
Andrej Dolenc
Andrej Dolenc

πŸ’» πŸ›
Raymond Ha
Raymond Ha

πŸ“–
Trivikram Kamat
Trivikram Kamat

πŸ’» 🚧

This project follows the all-contributors specification. Contributions of any kind welcome!

Supporters 🌞

Stargazers repo roster for @vimcolorschemes/vimcolorschemes

Forkers repo roster for @vimcolorschemes/vimcolorschemes

vimcolorschemes's People

Contributors

adolenc avatar allcontributors[bot] avatar almmiko avatar aniruddha-shriwant avatar armspkt avatar aserputov avatar delbetu avatar dependabot[bot] avatar dropb1t avatar gablaroche avatar hardikmodi1 avatar indremak avatar leewarnock avatar lucasarvelo avatar mk-irina avatar p4mela-g avatar pustur avatar reobin avatar sadakchap avatar shraymonks avatar sttronn avatar sutharmukesh avatar trivikr avatar tsubasaogawa avatar tulkdan avatar vfreitas- 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vimcolorschemes's Issues

feat: "Rising" sort action

The Rising sort action would sort the repositories by how many stars they have gotten over the previous week/month.

For this to happen, the data needs to be collected. This will be done by vimcolorschemes-worker.

Once it has been done and enough data has been collected, the "rising" sort action can be implemented on the app.

Set up a strategy for indexation of paginated pages

Google should not present page/2 in its results.

To implement

?

To confirm

  • <meta name="robots" content="noindex, nofollow" /> should be present on non first pages.

Not do do

  • next and prev tags should be used in the pagination component links or in header.

feat: Implement toggle functionality on sort buttons

Original title and idea: Use more inclusive language on sort buttons

"Least popular" feels rough.

Could create toggle buttons for asc and desc instead of having both a sort asc and a sort desc button.

Will also leave space for potential filter buttons.

feat: Filter repositories by light/dark schemes

Description

There is no easy of determining with absolute certainty if a color scheme is mainly dark, light, or has both options by parsing the readme.

The words "light" and "dark" could be searched for, but I am not sure the results would be incredibly accurate.

I guess it needs to be tried out.

UPDATE: Since we now fetch and parse the vim files of a repository to verify that it's a color scheme, we can verify with precision if light, dark, or both backgrounds are available.

UPDATE 2: With v2.0 available, it is now possible to look in the vimColorSchemes field of a repository to search for dark or light repositories.

bug: Focus on sub-images doesn't scroll on iPadOS

Description

I've noticed in iPadOS that when a sub-image is focused on a repository page, the page doesn't scroll so that the focused element is in the viewport.

If there's anything the app can do to enforce the scrolling, it should be done.

Create a landing page for colorschemes.dev

The landing page will be a point of entry for the various instances of the app. (vim, vscode, iterm2, ...)

  • It should have the same navigation as the app.
    • Maybe the useNavigation hook should have its own package and live independently?
  • It should have the same look and feel as the app
    • Take note of the variables used in the app styling, and use them

bug: Card link element not w3c compliant

Describe the bug
According to w3c, element <div /> is not allowed as child of element <a />. In the Card component, The RepositoryTitle component inside the <Link /> tag uses <div /> as a wrapper.

feat: Use a square favicon

The website is currently using an svg as a favicon and it is not squared.

A favicon could easily be generated from the current image instead.

feat: Add search function

Describe the solution you'd like

  • Pressing / focuses on the search input
  • At build time, the whole search index is upload to an elasticsearch instance
  • The previous elasticsearch index is removed
  • The frontend search is made through a node.js proxy APl piping requests to the elasticsearch instance

Make repo for external dev friendly

  • S3less setup for dev βœ”οΈ
  • More verbose on confusing stuff βœ”οΈ
  • Limit env variable βœ”οΈ
  • More readable handling of rate limit βœ”οΈ

Setup cron job

Definition of done

  • Be hosted on a service like AWS Lambda
  • Run everyday

feat: Set up eslint

Since the project was open-sourced, and more people might contribute, I think it would benefit from having automatic linting

Handle tab on zoomed image

When the tab key is used while an image is zoomed in, the focused image changes, and the image is never zoomed out.

Create about me/this project page

Definition of done

  • Provide a short description of the project and its motive
  • Provide documentation to help repository displaying their stuff on the app

Setup a CMS-like app to manage repository data exceptions

Some repositories have their first image a logo that doesn't display code, so I need a way to choose myself their featured image.

Some others are collections of already existing colorschemes. These I would need to filter out.

I'm open to ideas, but I need a way to do these changes myself in the data.

bug: Following the vimcolorschemes logo link on the footer doesn't reset the tab index

Describe the bug
While on the home page (/), following the footer logo link with the keyboard will scroll the page to the top, but will not reset the current tab index.

The next key presses will start from the bottom while the user is seeing the top of the page.

To Reproduce

  1. Go to vimcolorschemes.com
  2. Press j or arrow down until the footer logo link is focused.
  3. Press enter
  4. Notice the page scrolled to the top.
  5. Press j and notice nothing happened.
  6. Press k and notice the focus was still on the footer logo link.

Expected behavior
Following the footer logo link will reset the current tab index to the top.

Screenshots

Screen Shot 2020-08-09 at 19 30 22

Additional context
Tested on macOS on Google Chrome.

bug: When using keyboard to navigate, hide the hover styles

When using the keyboard to navigate, the mouse just laying over the screen often triggers an unnecessary hover effect on links.

It should be implemented only if it's possible and not too hacky.

A possible direction would be to use the document.body.style.pointerEvents property to disable styles for a small amount of time when a key is pressed. Reactivate them after x time.

Write readme

Description

  • Short project presentation
  • Deployments states
  • Links to the wiki for contribution guide

feat: Complete repository page

I think the repository page could have more info while staying minimal.

Info such as stargazers count, last commit date, create date, etc. could appear there.

Check alternatives to Netlify automatic builds

Netlify is good for now, as the app stays in the free tier.
If builds are daily and are > 10 minutes long, we'll need a pro account.

Anything really, as long as I can make the CI good enough.

Requirements:

  • .dev builds from staging branch
  • .com builds from master branch
  • App builds from ./app and the command is gatsby build
  • gatsby-cli needs to be installed on the machine

feat: Improve on the repository page

Is your feature request related to a problem? Please describe.
Pretty much only the title and images are present on the repository page.

Describe the solution you'd like
The repository page could benefit from a nice header with the info that the card already has.

Improve on Github API search query

Definition of done
It needs to include more all words related to vim color schemes. (Examples of missing terms: theme, colorschemes)

Make sure no repositories are left out. (Example of left out repo: Spacecamp)

bug: focused card image is cut on screens of certain ratio

Describe the bug
When using a certain ratio of window (ex: macOS 16:10), a card that is focused gets its link text in the middle of the screen, resulting in the image being cut off by the top of the window.

Expected behavior
The middle of the card should be focused, resulting in as much of the card being displayed on the window.

Screenshots

Screen Shot 2020-08-13 at 21 03 43

More info

I set the link's position to absolute top to confirm my suspicious:

Screen Shot 2020-08-13 at 21 01 58

The element in the center of the screen when the card is focused is indeed the a element, which is around the repository title for accessibility reasons.

How to fix

Just throwing ideas here, more research is needed.

  • Hidden link at position absolute center of the card.
  • scroll back like 100 pixels when focusing on a card.
  • use ::before pseudo-element with a negative margin-top

A quick test shows that the 3rd option works well.

.card__title > a:before {
  display: block; 
  content: " "; 
  margin-top: -80px;
  height: 80px; 
  visibility: hidden; 
  pointer-events: none;
}

Maybe the height of the card could be calculated in order to focus on the center of the card.

feat: Display common ways of installing the color scheme

Is your feature request related to a problem? Please describe.
Since no such info is available, one is forced to visit the GitHub page and parse it.

Describe the solution you'd like
The most common ways to install a color scheme could be listed below the main image.
They would be focusable and "yankable" by pressing y.

Ex.:

Plug 'github/url.vim'
colorscheme name
Plugin 'github/url.vim'
colorscheme name

Since some of them have multiple color scheme names, we can list those as well.

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.