Skip to content

Julia

Julia.jl

Julia.jl aggregates and curates decibans? of knowledge resources for programming in Julia, an all-purpose programming language that addresses the needs of high-performance numerical analysis and computational science.


§1. INDEX

  • AI :: Algorithms, DataMining, Data Structures, HMM, ML, NLP, ...
  • Actuarial Science :: Software related to the subcategories of econometrics, finance, etc.
  • API :: Language API's - C++, Fortran, Go, Java, JavaScript, MATLAB, Perl, Python, R, ...
  • Biology :: Bioinformatics, genomics, agriculture, food science, medicine, genetic engineering, Neuroscience, et. al...
  • Desktop Applications :: Front-end client application software, viz. Debuggers, Documentation generators, Desktop User Interface for word processors, GUI spreadsheets, etc..
  • DevOps :: DevOps tools for infrastructure management, continuous integration (CI), continuous delivery (CD), package management, release engineering (RE), release management (RM), software configuration management (SCM), Test Driven Development, Sandbox, Functional/ Unit testing,... Quality-related tools, et al..
  • Chemistry :: Analytical chemistry, cheminformatics, crystallography, nanochemistry, nuclear chemistry ...
  • Database :: NoSQL, RDBMS and Middleware API's.
  • Data Science :: OpenData + OpenScience, Free Data Sets, Reproducible research, RDM, Clinical Research Data, Metadata, Library data, Computational reproducibility, etc.
  • Earth Science :: Software related to the subcategories of cartography, climatology, geobiology, geochemistry, geography, geoinformatics, geology‎, geophysics‎, geoscience/GIS, geomathematics, meteorology, oceanography, etc...
  • FileIO :: File IO (Input/Output) functionality and support for various data types and file formats.
  • Graphics :: Plotting, Graphics and other Visualization tools.
  • i18n-L10n :: Transliteration, Internationalisation (i18n) and Localisation (L10n)
  • Machines :: Software for cross-platform hardware, Robotics, and other API libraries for machine-related software.
  • Mathematics :: Algebra, Geometry,... anything Math related.
  • Optimization :: Mathematical optimization.
  • Physics :: Julia software related to Physics.
  • Programming Paradigms :: Programming Paradigms and language concepts that are used in the type system, data types, etc..
  • Publications :: Research Papers (journal and conference publications).
  • QA :: Quality Assurance in Julia.
  • Resources :: List of community resources, development links, including events, (un)conferences, forums/ meetup groups, NEWS, blogs, cookbooks, cheatsheets, IJulia NoteBooks, and other useful resources.
  • Server :: HTTP/Web, Networking, and other server-side utils...
  • Space Science :: Astronomy, Imaging, Planetary and space science related packages.
  • Probability & Statistics :: Actuarial Science, Finance, economics, stochastic, insurance Statistics, Operations research and Benchmarks and Optimization toolkits....
  • Super Computing :: HPC, Distributed Computing, Cloud computing, Cluster computing, Grid computing, Kernels and architectures like ARM, MIPS, GPU, CUDA, etc...
  • Utilities :: Handy toolkits and other general utilities for your Desktop.

DISCLAIMER : As a new language in the scientific computing scene it is frequently in a state of flux due to the addition of new libraries, resulting in frequent changes and page reordering. Since the Julia.jl repo only provides a list (of links) of Julia packages out in the wild, it should not be considered an endorsement of any particular package for software quality, technical features, coding style/organization, etc...


§2. LICENSE

  • COPYRIGHT © 2012-Now SVAKSHA, herewith dual-licensed for the data (ODbL-v1.0+) and the software (AGPLv3+), respectively.

§2.1. AGPLv3 and ODbL

This repo uses multiple licenses for data and code, viz. ODbL and AGPLv3

  • The data (aggregated and curated decibans of knowledge resources for Julia language) in this repository (Julia.jl) is released under the Open Database License (ODbL-v1.0). The Open Database License (ODbL) grants anyone the freedom to share, create and adapt the data or database with proper credit attribution as specified in the license and offer any new work under the same terms, and release a public copy if using the new work for commercial purposes.
  • The software used in Julia.jl is released under the AGPLv3 License, and above, as detailed in the LICENSE-AGPLv3.md file.
  • ALL copies and forks of this work must retain the Copyright, respective Licence files for program code (AGPLv3) and data (ODbL) along with this permission notice in all copies or substantial portions of the new work.

The motivation for this change is to make it easier for people to re-use this data as a knowledge resource within a database. For example, julia-observer is a visual tool for browsing through packages that pulls data from Julia.jl, General and various sources. By releasing the website code publicly are an example on how one can build upon or transform the data to benefit the community.

§2.2. Mirrors


CONTRIBUTE

Contributions to Julia.jl are welcome in the form of pull requests (PR). Here are some guidelines and tips on how to submit a Bug Report (BR) and/or PR:

Guidelines

  1. The Julia community has ethical guidelines aimed at respecting Copyright, Licenses and attribution standards{1} and {2} which you are requested to follow while submitting materials to be listed. Additionally, if you find any material (or code repos) that violates these ethical standards, please file a bug report for their removal from Julia.jl.
  2. References : + {1} https://github.com/JuliaLang/julialang.github.com/issues/200 + {2} https://github.com/JuliaLang/julialang.github.com/issues/194
  3. Commercial Links: Almost all the resources in this repo are Free/Libre software resources, so in the interest of continuing to maintain the "Libre" software spirit, please only submit those resources that are free and without paid/commercial interests.

BugReport-PullRequest

  1. Add your link as per the top-level Category page within the topic sub-section(s), in alphabetical order, with notes (if any) in the markdown files. Before creating a new top-level tag within the various categories, please check wikipedia or other resources first. If you are unable to decide, discuss it via a BR (not a PR ;-)).
  2. In a CLI, type julia Julia.jl which will run the scraper. Commit the db.csv file too.
  3. For broken links or outdated information, submit a bug report (BR), or make the necessary changes and submit a PR. Both are welcome. Please submit separate PR's for each link or change added.
  4. For Documentation and cookbooks, check if it matches the categories listed, else, list it on the Resources.md page.
  5. For those unable to use git, create a github account, then fork the Julia.jl repo on the user interface. Then edit the page by clicking on the "pencil" icon on the markdown page, then click on save and submit a PR. Github does this automatically in 8 steps.

Package Status

Please note that this repo lists packages that are outdated and/or worked on older versions of Julia. These continue to remain listed as its openly available along with the hope that someone may want to continue with the work as a fork as it aligns with their research or work. These comments led to a BR discussing the addition of metadata tags that will enable programmers and package users to easily distinguish the status of various Julia packages that are under various stages of development. Currently, METADATA has a tag system but not all package authors use it, making it harder for lay users to know if the package maintenance is active or not.

Lets experiment with asking package authors and core-commiters to tag their Julia packages on the following criteria :

On a scale of 1 to 5 (1=lowest,..5=highest), please rank your package for,

  • Usability : Does the package do what it says it does? is it easy to figure out? Is the package production-ready and actively maintained (issues/PRs are responded and resolved in a timely manner, and maintenance and testing is at par with Julia release cycles).
  • Quality : Does the package have tests? are there lots of bugs? Do you have good documentation? Can it be used in production environments that expect prompt security patches?
  • Activity : Should a 3rd party user bother to use your library, or is it really only intended to be used by the package author? Let's say, an experimental "throw-away toy repo" whose development has now been abandoned.
  • License : Which software license do you use? If you don't have a license, please state None.

Stargazers

Stargazers over time