WIP - Crystal Library for Wikipedia API
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Konstantine 4e8fbf0bfd ran crystal format 9 months ago
examples ran crystal format 9 months ago
spec init 9 months ago
src ran crystal format 9 months ago
.editorconfig updated .editorconfig for codium 9 months ago
.gitignore init 9 months ago
.travis.yml init 9 months ago
LICENSE update license 9 months ago
README.md Updated readme 9 months ago
shard.yml updated readme, updated version, cleanup shard 9 months ago



Currently WIP, but this project works.

I wrapper for the Wikipedia and Wikimedia API to get commonly used things.

It’s constantly changing, but my main focus is working on new features and making QOL changes to make it nicer to work with.


Install as a shard by including in your shards.yml

    github: MaterialFuture/CrWikiLib

After adding remember to run shards to install and be able to use in your project


Refer to examples/ directory for examples of use.

To get the page in a data format use the following:

puts Wiki::Page.new("https", "Crystal_(programming_language)", "json")

To get the page as a PDF for download use the following:

puts Wiki::Page.pdf("https", "Crystal_(programming_language)")

To get the Post of the Day use the following code: (date in ISO format)

Wiki::POTD.new("HTTPS", potd_date, "json")

I made it so you can specify protocol, that way if you’re not required HTTP or HTTPS, you dsecide.


TODO: Write development instructions here


  1. Fork it (https://github.com/materialfuture/wiki-api/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request




  • Look into adding Admiral Shard
  • Look into adding functionality for reading txt file for bulk downloads for PDFs
  • Breakout URLs for so they’re more reusable