Project

slugfy_me

0.0
The project is in a healthy, maintained state
SlugfyMe is a minimalist Ruby gem created for the Captain Ruby blog. It helps you generate clean slugs from strings, and was built as an educational project to learn how to build and publish a Ruby gem.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies
 Project Readme

SlugfyMe

EN: A lightweight Ruby gem to generate clean slugs from strings, with basic accent and punctuation handling. FR : Une petite gem Ruby pour transformer des chaînes de caractères en slugs propres, avec gestion simple des accents et ponctuation.


🇫🇷 Présentation

SlugfyMe est une gem Ruby éducative développée dans le cadre du blog Captain Ruby, une ressource de référence pour la communauté Ruby francophone. SlugfyMe est une gem Ruby éducative développée dans le cadre du blog Captain Ruby, une ressource de référence pour la communauté Ruby francophone.

Elle permet de transformer une chaîne comme :

SlugfyMe.slugify("C'est quoi Ruby ?")
# => "cest-quoi-ruby"

Vous pouvez également personnaliser le séparateur :

SlugfyMe.slugify("Ruby c'est cool", separator: "_")
# => "ruby_cest_cool"

Cette gem a été pensée comme un projet simple pour découvrir comment créer, tester et publier une gem Ruby. Elle n’a pas vocation à remplacer une solution complète comme parameterize ou stringex.


🇬🇧 About

SlugfyMe is a minimalist Ruby gem built as part of Captain Ruby, a French-speaking blog dedicated to Ruby and Rails developers. SlugfyMe is a minimalist Ruby gem built as part of Captain Ruby, a French-speaking blog dedicated to Ruby and Rails developers.

It turns strings like:

SlugfyMe.slugify("What is Ruby?")
# => "what-is-ruby"

You can also customize the separator:

SlugfyMe.slugify("Ruby is cool", separator: "_")
# => "ruby_is_cool"

This gem is educational: it's designed to help developers understand how to build, test, and publish a Ruby gem from scratch. It is not meant to compete with full-featured libraries like stringex or parameterize.


✨ Installation

Add this line to your Gemfile:

gem 'slugfy_me'

Or install it manually:

gem install slugfy_me

✅ Usage

require "slugfy_me"

SlugfyMe.slugify("Crème brûlée au Café !")
# => "creme-brulee-au-cafe"

SlugfyMe.slugify("Salut à tous !", separator: "_")
# => "salut_a_tous"

🧪 Pourquoi cette gem ?

Ce projet fait partie d’un article publié sur Captain Ruby, un blog francophone dédié à Ruby, Rails et à la transmission du savoir dans notre belle communauté 🖠️

Le but est de montrer pas à pas comment créer une gem Ruby et la publier sur RubyGems, avec des explications simples et accessibles.


🧑‍💻 Développement

Après avoir cloné le repo, lance :

bin/setup

Pour exécuter les tests :

bundle exec rspec

Pour tester ta gem en local dans un environnement interactif :

bin/console

Pour installer la gem en local :

bundle exec rake install

Pour publier une nouvelle version :

  1. Mets à jour la version dans lib/slugfy_me/version.rb
  2. Lance :
bundle exec rake release

🤝 Contributing

Les pull requests sont les bienvenues ! Tu peux proposer des améliorations simples : nouveaux caractères à gérer, support de langues, options de formatage supplémentaires, etc.

Retrouve le projet sur GitHub : https://github.com/francilobbie/slugfy_me

Merci de suivre le code de conduite.


📄 Licence

La gem est disponible sous licence MIT.


🇫🇷 Cette gem a été créée pour les besoins du blog Captain Ruby — le repère des passionnés de Ruby et Rails en français.