Git Product home page Git Product logo

the-capitalizer's Introduction

The Capitalizer

The Capitalizer is a lightning⚡fast tool for automatically converting text to title case, according to the style guidelines of the Associated Press, American Psychological Association, Chicago Manual of Style, Modern Language Association, New York Times, and Wikipedia.

👉 Capitalize Some Titles

Advantages

  • No ads
  • Real-time capitalization
  • Bulk conversion (convert multiple titles at once)
  • Formatting assistance for quotes and em dashes
  • Offline support
  • Easily copy to clipboard
  • Lightning⚡fast

About

The Capitalizer is a PWA built with Vue.js. The business logic for capitalization lives in /capitalize/capitalize.js.

TODOs

  • Improve capitalization logic (e.g., hyphenation rules, better verbal noun support)
  • Bug fixes
  • Show reasons why words were or were not capitalized
  • Add ability to define custom rules
  • ???

Follow me on Twitter: @theroyalfig | @the_capitalizer

the-capitalizer's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

the-capitalizer's Issues

Modifying lists.js

I've modified my lists.js to add certain words that I want to be all caps.
Now this works for most words, but when I add an apostrophe (') into the lists.js the line with the apostrophe is just ignored & the text isn't converted.

Not sure if this happens for other things like slashes (/) or hashtags (#) or any other characters, but the apostrophe is the most important to me.

Change layout, or have the option to

The layout would be much better if instead of it being half/half, there's a box at the top, and the converted text is at the bottom.
This layout is much better as it makes it less likely for text to go across multiple lines unless it's super long. This is a key point as this tool is often used to convert multiple titles at once.

Also something to consider would the site expanding instead of having to scroll when a lot of lines are added.
Or the option for this to be possible at least, when having a lot of lines, it's preferable to see it rather than having to scroll.

This is how it currently is:
7Tz0qur

This is how I propose it to be:
SLu48fh

Hide Explanation

Website should have an option to hide the length explanation as you generally will only read this once, and there's a whole lot of unnecessary scrolling once you've got a jist of how the AP etc text functions.

Clipboard API Integration

Make use of the Clipboard API, so you don't have to manually copy etc.
You would just copy your headline from wherever, click on the site and it would automatically read your clipboard, and convert the case correctly and modify write/replace your current clipboard.

It would require clipboard permission from your browser, so this could be an optional way of using the site, but for anyone who converts a lot of headlines (like me) it'd speed things up a LOT...
It means you don't have to manually paste your text in, and then press the copy button etc, and where time is critical this is important.

https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API

Dockerize

Would it be possible for you to dockerize this for easy setup/management?
Would love to see a docker compose file to go with this.

Dark Theme

Button to enable a dark mode, where all the background on the rest of the page goes dark!
Could also instead of having a button, you can have it based on what the user has it set to for their computer/phone etc.
https://drafts.csswg.org/mediaqueries-5/#prefers-color-scheme

Would also like to thank you for making this project as it's probably one of the best Capitalizer's and I use it quite often, so thank you for your effort to create a sleek and functional converter. Hopefully you don't mind my suggestions! 😄
I'm not much of a coder myself if I was I'd make my own pull requests as all these features I really want added, so if you get time to add these features it'd be much appreciated!

Add to Lists.js via Site

Might be stretching here, but this would be very helpful, as it would mean you wouldn't have to manually access the lists.js, find the line alphabetically where to enter the line. It's very tedious for anyone trying to add their own words.

I've added over 500 words to the AllCaps list over a few weeks.

Prefix/Suffix Feature

You should be able to enter a Prefix/Suffix on the site, that will prefix any text that you enter into the capitalizer.
It shouldn't capitalize this text, this text you would put in yourself and it'd add it to anything you enter.

Example:
y19nODo

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.