Находки в опенсорсе
10.7K subscribers
11 photos
1 video
3 files
819 links
Привет!

Меня зовут Никита Соболев. Я занимаюсь опенсорс разработкой полный рабочий день.

Тут я рассказываю про #python, #c, опенсорс и тд.
Поддержать: https://boosty.to/sobolevn
РКН: https://vk.cc/cOzn36

Связь: @sobolev_nikita
Download Telegram
​​Introducing mdjs. Write Interactive Demos Using Markdown and #js.

Features:
- Works locally with es-dev-server
- Works with storybookjs
- Works on github

https://open-wc.org/mdjs/
​​A minimalist stylesheet for #html elements.
No class names, no frameworks, just semantic HTML and you're done.

Example: https://andybrewer.github.io/mvp/mvp.html

https://github.com/andybrewer/mvp/

#css
​​du + #rust = dust. Like du but more intuitive. Because I want an easy way to see where my disk is being used.

https://github.com/bootandy/dust
​​Organize #django settings into multiple files and directories. Easily override and modify settings. Use wildcards and optional settings files.

Read this blog post for more information: https://sobolevn.me/2017/04/managing-djangos-settings

This one was my first serious open-source project. I still have strong feels for it.

https://github.com/sobolevn/django-split-settings

#python
​​JSON CLI output utility

jc is used to JSONify the output of many standard linux cli tools and file types for easier parsing in scripts. See the Parsers section for supported commands and file types.

https://github.com/kellyjonbrazil/jc
​​View and control remote terminals from your browser with end-to-end encryption.

TermPair lets developers securely share and control terminals in real time. Before termpair sends terminal output to the server, it encrypts it using a secret key so the server cannot read it. The server forwards that data to connected browsers. When the browsers receive the data, they use the secret key to decrypt and display the terminal output.

Likewise, when a browser sends input to the terminal, it is encrypted in the browser, forwarded from the server to the terminal, then decrypted in the terminal by termpair and written to the terminal's input. The secret key is generated by termpair and embedded in a part of the url that is not sent to the server.

https://github.com/cs01/termpair

#python
pattern.css: #css only library to fill your empty background with beautiful patterns.

This library works with most of the frameworks including bootstrap. Supported by most browsers.

https://bansal.io/pattern-css
Functional Abstraction Layer for C++

Cefal is a C++20 header-only library with abstractions over basic functional programming concepts (and using C++20 concepts). It is more a research pet project than a production-ready library (especially keeping in mind it compiles only on GCC/master for now).

https://github.com/dkormalev/cefal

#cpp
​​Deal - #python library for design by contract (DbC) programming.

That's nice assert statements in decorators style to validate function input, output, available operations and object state. Goal is make testing much easier and detect errors in your code that occasionally was missed in tests.

Features:
- Automatic property-based tests.
- Static analysis.
- Generators and async coroutines support.
- External validators support.
- Type-annotated and mypy-friendly.
- Specify allowed exceptions for function.
- Invariant for all actions with class instances.
- Decorators to control available resources: forbid output, network operations, raising exceptions.
- You can disable contracts on production.

https://github.com/life4/deal/

Showcase of many existing decorators:
​​A syntax-highlighter for git and diff output written in #rust

Delta provides language syntax-highlighting, within-line insertion/deletion detection, and restructured diff output for git on the command line. All the syntax-highlighting color themes that are available with bat are available with delta.

https://github.com/dandavison/delta

Here's what git show looks like when git is configured to use delta as its pager:
​​Do you remember that endless summer back in '84? Cruising down the ocean-highway with the top down, the wind in our hair and heads buzzing with neon dreams?

https://github.com/robb0wen/synthwave-vscode
​​Experimental no-bundle dev server for #vue SFCs.

The primary difference is that for vite there is no bundling during development. The ES Import syntax in your source code is served directly to the browser, and the browser parses them via native <script module> support, making HTTP requests for each import. The dev server intercepts the requests and performs code transforms if necessary. For example, an import to a vue file is compiled on the fly right before it's sent back to the browser.

There are a few advantages of this approach:
- Since there is no bundling work to be done, the server cold start is extremely fast.
- Code is compiled on demand, so only code actually imported on the current screen is compiled. You don't have to wait until your entire app to be bundled to start developing. This can be a huge difference in apps with dozens of screens.
- Hot module replacement (HMR) performance is decoupled from the total number of modules. This makes HMR consistently fast no matter how big your app is.

vite is highly experimental at this stage and is not suitable for production use, but we hope to one day make it so.

https://github.com/vuejs/vite
​​Demystify and debug your sed scripts, from comfort of your terminal.

Some of the notable features include:
- Preview variable values, both of them!
- See how will a substitute command affect pattern space before it runs
- Step through sed script - both forward and backwards!
- Place breakpoints and examine program state
- Hot reload and see what changes as you edit source code
- Its name is a palindrome

https://github.com/SoptikHa2/desed/

#shell #rust
​​animate.css is a bunch of cool, fun, and cross-browser #css animations for you to use in your projects. Great for emphasis, home pages, sliders, and general just-add-water-awesomeness.

https://github.com/daneden/animate.css
​​Artichoke is a #ruby made with #rust

If Artichoke does not run Ruby source code in the same way that MRI does, it is a bug. MRI compatibility means supporting a C API, if possible.

Pack a Ruby VM, application source code, configuration, and native extensions into a single-file bundle. Easy distribution without requiring installation of a Ruby VM.

Artichoke also compiles to WebAssembly with Emscripten. We plan to support compiling for wasm32-unknown-unknown targets.

https://www.artichokeruby.org/
​​An email client that functions like a kanban board, for Mac/Windows/Linux/Docker.

Features:
- Works on MacOS (beta), Linux (alpha) & Windows (alpha)
- Developed using Gmail, Outlook & Fastmail
- Should be compatible with other email providers (uses IMAP/SMTP)
- Considered in "beta" - used as primary email client for >1yr

https://github.com/Oxygem/Kanmail

#js #python
​​Editly is a tool and framework for declarative NLE (non-linear video editing) using Node.js and ffmpeg. Editly allows you to easily and programmatically create a video from set of clips, images and titles, with smooth transitions between and music overlaid.

Editly has a simple CLI for quickly assembling a video from a set of clips or images, or you can use its more flexible Javascript API.

https://github.com/mifi/editly

Example:

editly \
title:'My video' \
clip1.mov \
clip2.mov \
title:'My slideshow' \
img1.jpg \
img2.jpg \
title:'THE END' \
--fast \
--audio-file-path /path/to/music.mp3


#js
​​Polacode — Polaroid for your code. Use Polacode to capture good look images of your code, just as it appears in #vscode.

You have spent countless hours finding the perfect JavaScript grammar, matching it with a sleek-looking VS Code theme, trying out all the best programming fonts.

You take three days porting over your theme before starting to use VS Code.
You shell out $200 for italic cursive html attributes.

The code has to look right.

https://github.com/octref/polacode

#js
​​Taichi (太极) is a programming language designed for high-performance computer graphics. It is deeply embedded in #python, and its just-in-time compiler offloads compute-intensive tasks to multi-core CPUs and massively parallel GPUs.

https://github.com/taichi-dev/taichi

Example code: https://github.com/taichi-dev/taichi/blob/master/examples/fractal.py#L1-L31

Output:
​​An experiment to create a community driven language-learning platform.

> My goal is to start a community-driven language-learning platform that gives it's users and contributors a way to influence its future and adapt it to special requirements. To achieve that, I release all source code under the GPLv3 free software license, which guarantees end users the freedom to run, study, share, and modify the software.

https://github.com/kantord/LibreLingo

#python #svelte