lololib
Cross-platform utilities library for C
lololib Documentation

Build Unit tests Unit tests

lololib - Cross-platform multi-purposes library for C

⚙️ Usage

In the template/ folder, you can see how to use the library to build a binary.
You can also use the library in your project by adding the following lines to your CMakeLists.txt:

include(FetchContent)
FetchContent_Declare(
lololib
GIT_REPOSITORY "https://github.com/Lqvrent/lololib.git"
GIT_TAG "1.0.0" # can be a branch, a tag or a commit
)
FetchContent_MakeAvailable(lololib)
target_link_libraries(${PROJECT_NAME} lolo)
target_include_directories(${PROJECT_NAME} PRIVATE ${lololib_SOURCE_DIR}/includes)

📚 Documentation

You can find the documentation here.
You can also build it locally (with Doxygen) by running the following commands :

mkdir build && cd build
cmake -DBUILD_WITH_DOCS=ON ..
make docs # or mingw32-make docs, depending if you're on Windows

🎯 Roadmap

  • [x] Add unit tests
  • [x] Add the documentation on Github pages programmatically.
  • [x] Make the library cross-platform.
  • [x] Make the library fetchable with CMake.
  • [x] Internal
  • [x] Errors
  • [x] Strings
  • [x] Linked lists
  • [x] v1.0.0 Release 🚀
  • [x] Now that a release is out, features MUST be written in issues and PRs.
  • [x] Queues
  • [x] Stacks
  • [x] Hashmaps
  • [ ] Path
  • [ ] Filesystem
  • [ ] v1.1.0 Release 🚀
  • [ ] JSON parser & serializer
  • [ ] And more ! (If you have any ideas, feel free to open an issue, I don't bite and more importantly, I don't know what to do next !)

🤝 Contributing

If you want to modify the library, you can do so by following these steps:
1. Fork the repository.
2. Create a new branch.
3. Make your changes.
4. Create a pull request.

If you want to add a new feature, please open an issue first to discuss it.

📜 License

This project is licensed under the MIT License. See the LICENSE file for details.