├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | License: CC-BY-SA-3.0 2 | Creative Commons Attribution-ShareAlike 3.0 Unported 3 | . 4 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE 5 | LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN 6 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION 7 | ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE 8 | INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM 9 | ITS USE. 10 | . 11 | License 12 | . 13 | THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE 14 | COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY 15 | COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS 16 | AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. 17 | . 18 | BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE 19 | TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY 20 | BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS 21 | CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND 22 | CONDITIONS. 23 | . 24 | 1. Definitions 25 | . 26 | a. "Adaptation" means a work based upon the Work, or upon the Work and 27 | other pre-existing works, such as a translation, adaptation, derivative 28 | work, arrangement of music or other alterations of a literary or 29 | artistic work, or phonogram or performance and includes cinematographic 30 | adaptations or any other form in which the Work may be recast, 31 | transformed, or adapted including in any form recognizably derived from 32 | the original, except that a work that constitutes a Collection will not 33 | be considered an Adaptation for the purpose of this License. For the 34 | avoidance of doubt, where the Work is a musical work, performance or 35 | phonogram, the synchronization of the Work in timed-relation with a 36 | moving image ("synching") will be considered an Adaptation for the 37 | purpose of this License. 38 | . 39 | b. "Collection" means a collection of literary or artistic works, such 40 | as encyclopedias and anthologies, or performances, phonograms or 41 | broadcasts, or other works or subject matter other than works listed in 42 | Section 1(f) below, which, by reason of the selection and arrangement of 43 | their contents, constitute intellectual creations, in which the Work is 44 | included in its entirety in unmodified form along with one or more other 45 | contributions, each constituting separate and independent works in 46 | themselves, which together are assembled into a collective whole. A work 47 | that constitutes a Collection will not be considered an Adaptation (as 48 | defined below) for the purposes of this License. 49 | . 50 | c. "Creative Commons Compatible License" means a license that is listed 51 | at http://creativecommons.org/compatiblelicenses that has been approved 52 | by Creative Commons as being essentially equivalent to this License, 53 | including, at a minimum, because that license: (i) contains terms that 54 | have the same purpose, meaning and effect as the License Elements of 55 | this License; and, (ii) explicitly permits the relicensing of 56 | adaptations of works made available under that license under this 57 | License or a Creative Commons jurisdiction license with the same License 58 | Elements as this License. 59 | . 60 | d. "Distribute" means to make available to the public the original and 61 | copies of the Work or Adaptation, as appropriate, through sale or other 62 | transfer of ownership. 63 | . 64 | e. "License Elements" means the following high-level license attributes 65 | as selected by Licensor and indicated in the title of this License: 66 | Attribution, ShareAlike. 67 | . 68 | f. "Licensor" means the individual, individuals, entity or entities that 69 | offer(s) the Work under the terms of this License. 70 | . 71 | g. "Original Author" means, in the case of a literary or artistic work, 72 | the individual, individuals, entity or entities who created the Work or 73 | if no individual or entity can be identified, the publisher; and in 74 | addition (i) in the case of a performance the actors, singers, 75 | musicians, dancers, and other persons who act, sing, deliver, declaim, 76 | play in, interpret or otherwise perform literary or artistic works or 77 | expressions of folklore; (ii) in the case of a phonogram the producer 78 | being the person or legal entity who first fixes the sounds of a 79 | performance or other sounds; and, (iii) in the case of broadcasts, the 80 | organization that transmits the broadcast. 81 | . 82 | h. "Work" means the literary and/or artistic work offered under the 83 | terms of this License including without limitation any production in the 84 | literary, scientific and artistic domain, whatever may be the mode or 85 | form of its expression including digital form, such as a book, pamphlet 86 | and other writing; a lecture, address, sermon or other work of the same 87 | nature; a dramatic or dramatico-musical work; a choreographic work or 88 | entertainment in dumb show; a musical composition with or without words; 89 | a cinematographic work to which are assimilated works expressed by a 90 | process analogous to cinematography; a work of drawing, painting, 91 | architecture, sculpture, engraving or lithography; a photographic work 92 | to which are assimilated works expressed by a process analogous to 93 | photography; a work of applied art; an illustration, map, plan, sketch 94 | or three-dimensional work relative to geography, topography, 95 | architecture or science; a performance; a broadcast; a phonogram; a 96 | compilation of data to the extent it is protected as a copyrightable 97 | work; or a work performed by a variety or circus performer to the extent 98 | it is not otherwise considered a literary or artistic work. 99 | . 100 | i. "You" means an individual or entity exercising rights under this 101 | License who has not previously violated the terms of this License with 102 | respect to the Work, or who has received express permission from the 103 | Licensor to exercise rights under this License despite a previous 104 | violation. 105 | . 106 | j. "Publicly Perform" means to perform public recitations of the Work 107 | and to communicate to the public those public recitations, by any means 108 | or process, including by wire or wireless means or public digital 109 | performances; to make available to the public Works in such a way that 110 | members of the public may access these Works from a place and at a place 111 | individually chosen by them; to perform the Work to the public by any 112 | means or process and the communication to the public of the performances 113 | of the Work, including by public digital performance; to broadcast and 114 | rebroadcast the Work by any means including signs, sounds or images. 115 | . 116 | k. "Reproduce" means to make copies of the Work by any means including 117 | without limitation by sound or visual recordings and the right of 118 | fixation and reproducing fixations of the Work, including storage of a 119 | protected performance or phonogram in digital form or other electronic 120 | medium. 121 | . 122 | 2. Fair Dealing Rights. Nothing in this License is intended to reduce, 123 | limit, or restrict any uses free from copyright or rights arising from 124 | limitations or exceptions that are provided for in connection with the 125 | copyright protection under copyright law or other applicable laws. 126 | . 127 | 3. License Grant. Subject to the terms and conditions of this License, 128 | Licensor hereby grants You a worldwide, royalty-free, non-exclusive, 129 | perpetual (for the duration of the applicable copyright) license to 130 | exercise the rights in the Work as stated below: 131 | . 132 | a. to Reproduce the Work, to incorporate the Work into one or more 133 | Collections, and to Reproduce the Work as incorporated in the 134 | Collections; 135 | . 136 | b. to create and Reproduce Adaptations provided that any such 137 | Adaptation, including any translation in any medium, takes reasonable 138 | steps to clearly label, demarcate or otherwise identify that changes 139 | were made to the original Work. For example, a translation could be 140 | marked "The original work was translated from English to Spanish," or a 141 | modification could indicate "The original work has been modified."; 142 | . 143 | c. to Distribute and Publicly Perform the Work including as incorporated 144 | in Collections; and, 145 | . 146 | d. to Distribute and Publicly Perform Adaptations. 147 | . 148 | e. For the avoidance of doubt: 149 | . 150 | i. Non-waivable Compulsory License Schemes. In those jurisdictions in 151 | which the right to collect royalties through any statutory or compulsory 152 | licensing scheme cannot be waived, the Licensor reserves the exclusive 153 | right to collect such royalties for any exercise by You of the rights 154 | granted under this License; 155 | . 156 | ii. Waivable Compulsory License Schemes. In those jurisdictions in which 157 | the right to collect royalties through any statutory or compulsory 158 | licensing scheme can be waived, the Licensor waives the exclusive right 159 | to collect such royalties for any exercise by You of the rights granted 160 | under this License; and, 161 | . 162 | iii. Voluntary License Schemes. The Licensor waives the right to collect 163 | royalties, whether individually or, in the event that the Licensor is a 164 | member of a collecting society that administers voluntary licensing 165 | schemes, via that society, from any exercise by You of the rights 166 | granted under this License. 167 | . 168 | The above rights may be exercised in all media and formats whether now 169 | known or hereafter devised. The above rights include the right to make 170 | such modifications as are technically necessary to exercise the rights 171 | in other media and formats. Subject to Section 8(f), all rights not 172 | expressly granted by Licensor are hereby reserved. 173 | . 174 | 4. Restrictions. The license granted in Section 3 above is expressly 175 | made subject to and limited by the following restrictions: 176 | . 177 | a. You may Distribute or Publicly Perform the Work only under the terms 178 | of this License. You must include a copy of, or the Uniform Resource 179 | Identifier (URI) for, this License with every copy of the Work You 180 | Distribute or Publicly Perform. You may not offer or impose any terms on 181 | the Work that restrict the terms of this License or the ability of the 182 | recipient of the Work to exercise the rights granted to that recipient 183 | under the terms of the License. You may not sublicense the Work. You 184 | must keep intact all notices that refer to this License and to the 185 | disclaimer of warranties with every copy of the Work You Distribute or 186 | Publicly Perform. When You Distribute or Publicly Perform the Work, You 187 | may not impose any effective technological measures on the Work that 188 | restrict the ability of a recipient of the Work from You to exercise the 189 | rights granted to that recipient under the terms of the License. This 190 | Section 4(a) applies to the Work as incorporated in a Collection, but 191 | this does not require the Collection apart from the Work itself to be 192 | made subject to the terms of this License. If You create a Collection, 193 | upon notice from any Licensor You must, to the extent practicable, 194 | remove from the Collection any credit as required by Section 4(c), as 195 | requested. If You create an Adaptation, upon notice from any Licensor 196 | You must, to the extent practicable, remove from the Adaptation any 197 | credit as required by Section 4(c), as requested. 198 | . 199 | b. You may Distribute or Publicly Perform an Adaptation only under the 200 | terms of: (i) this License; (ii) a later version of this License with 201 | the same License Elements as this License; (iii) a Creative Commons 202 | jurisdiction license (either this or a later license version) that 203 | contains the same License Elements as this License (e.g., 204 | Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons Compatible 205 | License. If you license the Adaptation under one of the licenses 206 | mentioned in (iv), you must comply with the terms of that license. If 207 | you license the Adaptation under the terms of any of the licenses 208 | mentioned in (i), (ii) or (iii) (the "Applicable License"), you must 209 | comply with the terms of the Applicable License generally and the 210 | following provisions: (I) You must include a copy of, or the URI for, 211 | the Applicable License with every copy of each Adaptation You Distribute 212 | or Publicly Perform; (II) You may not offer or impose any terms on the 213 | Adaptation that restrict the terms of the Applicable License or the 214 | ability of the recipient of the Adaptation to exercise the rights 215 | granted to that recipient under the terms of the Applicable License; 216 | (III) You must keep intact all notices that refer to the Applicable 217 | License and to the disclaimer of warranties with every copy of the Work 218 | as included in the Adaptation You Distribute or Publicly Perform; (IV) 219 | when You Distribute or Publicly Perform the Adaptation, You may not 220 | impose any effective technological measures on the Adaptation that 221 | restrict the ability of a recipient of the Adaptation from You to 222 | exercise the rights granted to that recipient under the terms of the 223 | Applicable License. This Section 4(b) applies to the Adaptation as 224 | incorporated in a Collection, but this does not require the Collection 225 | apart from the Adaptation itself to be made subject to the terms of the 226 | Applicable License. 227 | . 228 | c. If You Distribute, or Publicly Perform the Work or any Adaptations or 229 | Collections, You must, unless a request has been made pursuant to 230 | Section 4(a), keep intact all copyright notices for the Work and 231 | provide, reasonable to the medium or means You are utilizing: (i) the 232 | name of the Original Author (or pseudonym, if applicable) if supplied, 233 | and/or if the Original Author and/or Licensor designate another party or 234 | parties (e.g., a sponsor institute, publishing entity, journal) for 235 | attribution ("Attribution Parties") in Licensor's copyright notice, 236 | terms of service or by other reasonable means, the name of such party or 237 | parties; (ii) the title of the Work if supplied; (iii) to the extent 238 | reasonably practicable, the URI, if any, that Licensor specifies to be 239 | associated with the Work, unless such URI does not refer to the 240 | copyright notice or licensing information for the Work; and (iv) , 241 | consistent with Ssection 3(b), in the case of an Adaptation, a credit 242 | identifying the use of the Work in the Adaptation (e.g., "French 243 | translation of the Work by Original Author," or "Screenplay based on 244 | original Work by Original Author"). The credit required by this Section 245 | 4(c) may be implemented in any reasonable manner; provided, however, 246 | that in the case of a Adaptation or Collection, at a minimum such credit 247 | will appear, if a credit for all contributing authors of the Adaptation 248 | or Collection appears, then as part of these credits and in a manner at 249 | least as prominent as the credits for the other contributing authors. 250 | For the avoidance of doubt, You may only use the credit required by this 251 | Section for the purpose of attribution in the manner set out above and, 252 | by exercising Your rights under this License, You may not implicitly or 253 | explicitly assert or imply any connection with, sponsorship or 254 | endorsement by the Original Author, Licensor and/or Attribution Parties, 255 | as appropriate, of You or Your use of the Work, without the separate, 256 | express prior written permission of the Original Author, Licensor and/or 257 | Attribution Parties. 258 | . 259 | d. Except as otherwise agreed in writing by the Licensor or as may be 260 | otherwise permitted by applicable law, if You Reproduce, Distribute or 261 | Publicly Perform the Work either by itself or as part of any Adaptations 262 | or Collections, You must not distort, mutilate, modify or take other 263 | derogatory action in relation to the Work which would be prejudicial to 264 | the Original Author's honor or reputation. Licensor agrees that in those 265 | jurisdictions (e.g. Japan), in which any exercise of the right granted 266 | in Section 3(b) of this License (the right to make Adaptations) would be 267 | deemed to be a distortion, mutilation, modification or other derogatory 268 | action prejudicial to the Original Author's honor and reputation, the 269 | Licensor will waive or not assert, as appropriate, this Section, to the 270 | fullest extent permitted by the applicable national law, to enable You 271 | to reasonably exercise Your right under Section 3(b) of this License 272 | (right to make Adaptations) but not otherwise. 273 | . 274 | 5. Representations, Warranties and Disclaimer 275 | . 276 | UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR 277 | OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY 278 | KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, 279 | INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, 280 | FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF 281 | LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, 282 | WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE 283 | EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. 284 | . 285 | 6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE 286 | LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR 287 | ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES 288 | ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS 289 | BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 290 | . 291 | 7. Termination 292 | . 293 | a. This License and the rights granted hereunder will terminate 294 | automatically upon any breach by You of the terms of this License. 295 | Individuals or entities who have received Adaptations or Collections 296 | from You under this License, however, will not have their licenses 297 | terminated provided such individuals or entities remain in full 298 | compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will 299 | survive any termination of this License. 300 | . 301 | b. Subject to the above terms and conditions, the license granted here 302 | is perpetual (for the duration of the applicable copyright in the Work). 303 | Notwithstanding the above, Licensor reserves the right to release the 304 | Work under different license terms or to stop distributing the Work at 305 | any time; provided, however that any such election will not serve to 306 | withdraw this License (or any other license that has been, or is 307 | required to be, granted under the terms of this License), and this 308 | License will continue in full force and effect unless terminated as 309 | stated above. 310 | . 311 | 8. Miscellaneous 312 | . 313 | a. Each time You Distribute or Publicly Perform the Work or a 314 | Collection, the Licensor offers to the recipient a license to the Work 315 | on the same terms and conditions as the license granted to You under 316 | this License. 317 | . 318 | b. Each time You Distribute or Publicly Perform an Adaptation, Licensor 319 | offers to the recipient a license to the original Work on the same terms 320 | and conditions as the license granted to You under this License. 321 | . 322 | c. If any provision of this License is invalid or unenforceable under 323 | applicable law, it shall not affect the validity or enforceability of 324 | the remainder of the terms of this License, and without further action 325 | by the parties to this agreement, such provision shall be reformed to 326 | the minimum extent necessary to make such provision valid and 327 | enforceable. 328 | . 329 | d. No term or provision of this License shall be deemed waived and no 330 | breach consented to unless such waiver or consent shall be in writing 331 | and signed by the party to be charged with such waiver or consent. 332 | . 333 | e. This License constitutes the entire agreement between the parties 334 | with respect to the Work licensed here. There are no understandings, 335 | agreements or representations with respect to the Work not specified 336 | here. Licensor shall not be bound by any additional provisions that may 337 | appear in any communication from You. This License may not be modified 338 | without the mutual written agreement of the Licensor and You. 339 | . 340 | f. The rights granted under, and the subject matter referenced, in this 341 | License were drafted utilizing the terminology of the Berne Convention 342 | for the Protection of Literary and Artistic Works (as amended on 343 | September 28, 1979), the Rome Convention of 1961, the WIPO Copyright 344 | Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and 345 | the Universal Copyright Convention (as revised on July 24, 1971). These 346 | rights and subject matter take effect in the relevant jurisdiction in 347 | which the License terms are sought to be enforced according to the 348 | corresponding provisions of the implementation of those treaty 349 | provisions in the applicable national law. If the standard suite of 350 | rights granted under applicable copyright law includes additional rights 351 | not granted under this License, such additional rights are deemed to be 352 | included in the License; this License is not intended to restrict the 353 | license of any rights under applicable law. 354 | . 355 | Creative Commons Notice 356 | . 357 | Creative Commons is not a party to this License, and makes no warranty 358 | whatsoever in connection with the Work. Creative Commons will not be 359 | liable to You or any party on any legal theory for any damages 360 | whatsoever, including without limitation any general, special, 361 | incidental or consequential damages arising in connection to this 362 | license. Notwithstanding the foregoing two (2) sentences, if Creative 363 | Commons has expressly identified itself as the Licensor hereunder, it 364 | shall have all rights and obligations of Licensor. 365 | . 366 | Except for the limited purpose of indicating to the public that the Work 367 | is licensed under the CCPL, Creative Commons does not authorize the use 368 | by either party of the trademark "Creative Commons" or any related 369 | trademark or logo of Creative Commons without the prior written consent 370 | of Creative Commons. Any permitted use will be in compliance with 371 | Creative Commons' then-current trademark usage guidelines, as may be 372 | published on its website or otherwise made available upon request from 373 | time to time. For the avoidance of doubt, this trademark restriction 374 | does not form part of the License. 375 | . 376 | Creative Commons may be contacted at http://creativecommons.org/. 377 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome-Lightweights 2 | 3 | This is a list of Open Source implementations of various protocols and technologies. Those implementations should strive to be lightweight and easily readable. 4 | 5 | 6 | Inspired by [this comment](https://news.ycombinator.com/item?id=14953648) on HN. 7 | 8 | ## BitTorrent 9 | - [LightDHT](https://github.com/drxzcl/lightdht) a lightweight python implementation of the BitTorrent DHT. `Python` 10 | 11 | ## Blockchain 12 | - [Naivechain](https://github.com/lhartikk/naivechain) a blockchain in 200 lines of code. `Apache` `Javascript` 13 | - [Tinychain](https://github.com/jamesob/tinychain) a pocket-sized implementation of Bitcoin. `MIT` `Python` 14 | 15 | ## Neural network 16 | - [Mind](https://github.com/stevenmiller888/mind) a neural network library built in JavaScript. `MIT` `Javascript` 17 | 18 | ## NTP 19 | - [NTPserver](https://github.com/limifly/ntpserver) a Python based ntp server. `MIT` `Python` 20 | 21 | ## Text editor 22 | - [Kilo](https://github.com/antirez/kilo) a (console) text editor in less than 1000 lines of code with syntax highlight and search. `BSD2` `C` --------------------------------------------------------------------------------