This template provides a minimal setup to get React and Aleo working in Vite with HMR and some ESLint rules.
This template includes a Leo program that is loaded by the web app located in
the helloworld
directory.
Note: Webpack is currently used for production builds due to a bug with Vite related to nested workers.
npm run dev
Your app should be running on http://localhost:5173/
-
Copy the
helloworld/.env.example
tohelloworld/.env
(this will be ignored by Git):cd helloworld cp .env.example .env
-
Replace
PRIVATE_KEY=user1PrivateKey
in the.env
with your own key (you can use an existing one or generate your own at https://aleo.tools/account) -
Follow instructions to install Leo here: https://github.com/AleoHQ/leo
-
You can edit
helloworld/src/main.leo
and runleo run
to compile and update the Aleo instructions underbuild
which are loaded by the web app.
Warning
This is for demonstration purposes or local testing only, in production applications you should avoid building a public facing web app with private key information
Information on generating a private key, seeding a wallet with funds, and finding a spendable record can be found here if you are unfamiliar: https://developer.aleo.org/testnet/getting_started/deploy_execute_demo
Aleo programs deployed require unique names, make sure to edit the program's name to something unique in helloworld/src/main.leo
, helloworld/program.json
, rename helloworld/inputs/helloworld.in
and rebuild.
-
In the
worker.js
file modify the privateKey to be an account with available funds// Use existing account with funds const account = new Account({ privateKey: "user1PrivateKey", });
-
(Optional) Provide a fee record manually (located in commented code within
worker.js
)If you do not provide a manual fee record, the SDK will attempt to scan for a record starting at the latest block. A simple way to speed this up would be to make a public transaction to this account right before deploying.
-
Run the web app and hit the deploy button
npm run build
Upload dist
folder to your host of choice.
DOMException: Failed to execute 'postMessage' on 'Worker': SharedArrayBuffer transfer requires self.crossOriginIsolated
If you get a warning similar to this when deploying your application, you need to make sure your web server is configured with the following headers:
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
We've included a _headers
file that works with some web hosts (e.g. Netlify)
but depending on your host / server setup you may need to configure the headers
manually.
A compact, no-frills rΓ©sumΓ© theme for candidates with lengthy work histories. Collapses older work history into a single summary entry.
The Sadeh theme folds the candidates last several jobs into a single entry in order to conserve vertical space. Your resume should have at least 7 or 8 job entries in order for this theme to make sense.
MIT. See LICENSE.md for details.
Provides boilerplate codes for easier smart contract creation using Hardhat CLI.
Speed up the setup phase of contract development for both new and experienced developers.
For plugin installation, navigate to Preferences
, then Plugins
, and finally Marketplace
. In the search bar, enter Hardhat
.
web3swift is an iOS toolbelt for interaction with the Ethereum network.
Join our discord or Telegram if you need support or want to contribute to web3swift development!
- Core features
- Installation
- Example usage
- Build from source
- Requirements
- Documentation
- Projects that are using web3swift
- Support
- Contribute
- Credits
- Security Disclosure
- License
- β‘ Swift implementation of web3.js functionality
- π Interaction with remote node via JSON RPC
- π Local keystore management (
geth
compatible) - π€ Smart-contract ABI parsing
- πABI decoding (V2 is supported with return of structures from public functions. Part of 0.4.22 Solidity compiler)
- πΈEthereum Name Service (ENS) support - a secure & decentralised way to address resources both on and off the blockchain using simple, human-readable names
- π Smart contracts interactions (read/write)
- β© Infura support
- β Parsing TxPool content into native values (ethereum addresses and transactions) - easy to get pending transactions
- π Event loops functionality
- π΅οΈββοΈ Possibility to add or remove "middleware" that intercepts, modifies and even cancel transaction workflow on stages "before assembly", "after assembly" and "before submission"
- β Literally following the standards (BIP, EIP, etc):
- EIP-20 (Standard interface for tokens - ERC-20), EIP-67 (Standard URI scheme), EIP-155 (Replay attacks protection), EIP-2718 (Typed Transaction Envelope), EIP-1559 (Gas Fee market change)
- And many others (For details about this EIP's look at Documentation page): EIP-165, EIP-681, EIP-721, EIP-777, EIP-820, EIP-888, EIP-1155, EIP-1376, EIP-1400, EIP-1410, EIP-1594, EIP-1633, EIP-1643, EIP-1644, EIP-4361 (SIWE), ST-20
- RLP encoding
- Base58 encoding scheme
- Formatting to and from Ethereum Units
- Comprehensive Unit and Integration Test Coverage
The Swift Package Manager is a tool for automating the distribution of Swift code that is well integrated with Swift build system.
Once you have your Swift package set up, adding web3swift
as a dependency is as easy as adding it to the dependencies
value of your Package.swift
.
dependencies: [
.package(url: "https://github.com/web3swift-team/web3swift.git", .upToNextMajor(from: "3.0.0"))
]
Or if your project is not a package follow these guidelines on how to add a Swift Package to your Xcode project.
In the imports section:
import web3swift
import Web3Core
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
$ sudo gem install cocoapods
To integrate web3swift into your Xcode project using CocoaPods, specify it in your Podfile
:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '13.0'
target '<Your Target Name>' do
use_frameworks!
pod 'web3swift'
end
Then, run the following command:
$ pod install
WARNING: CocoaPods is a powerful tool for managing dependencies in iOS development, but it also has some limitations that preventing us of providing first class support there. We highly recommend using SPM first as using CocoaPods will delay new updates and bug fixes being delivered to you.
let transaction: CodableTransaction = .emptyTransaction
transaction.from = from ?? transaction.sender // `sender` one is if you have private key of your wallet address, so public key e.g. your wallet address could be interpreted
transaction.value = value
transaction.gasLimitPolicy = .manual(78423)
transaction.gasPricePolicy = .manual(20000000000)
web3.eth.send(transaction)
let contract = web3.contract(Web3.Utils.erc20ABI, at: receipt.contractAddress!)!
let readOp = contract.createReadOperation("name")!
readOp.transaction.from = EthereumAddress("0xe22b8979739D724343bd002F9f432F5990879901")
let response = try await readTX.callContractMethod()
let abiString = "[]" // some ABI string
let bytecode = Data.fromHex("") // some ABI bite sequence
let contract = web3.contract(abiString, at: nil, abiVersion: 2)!
let parameters: [Any] = [...]
let deployOp = contract.prepareDeploy(bytecode: bytecode, constructor: contract.contract.constructor, parameters: parameters)!
deployOp.transaction.from = "" // your address
deployOp.transaction.gasLimitPolicy = .manual(3000000)
let result = try await deployTx.writeToChain(password: "web3swift")
func feeHistory(blockCount: UInt, block: BlockNumber, percentiles:[Double]) async throws -> Web3.Oracle.FeeHistory {
let requestCall: APIRequest = .feeHistory(blockCount, block, percentiles)
let response: APIResponse<Web3.Oracle.FeeHistory> = try await APIRequest.sendRequest(with: web3.provider, for: requestCall) /// explicitly declaring `Result` type is **required**.
return response.result
}
git clone https://github.com/web3swift-team/web3swift.git
cd web3swift
swift build
- iOS 13.0 / macOS 10.15
- Xcode 12.5
- Swift 5.5
Documentation is under constructionπ·π»π·πΌββοΈ. Weβre trying our best to comment all public API as detailed as we can, but the end it still far to come. But in one of the nearest minor updates weβll bring DocC support of already done amount of docs. And your PR in such are more than welcome.
Please take a look at Our customers wiki page.
Join our discord and Telegram if you need support or want to contribute to web3swift development!
- If you need help, please take a look at our FAQ or open an issue.
- If you'd like to see web3swift best practices, check Projects that using web3swift.
- If you found a bug, open an issue.
To do local development and run the local tests, we recommend to use ganache which is also used by CI when running github actions.
// To install
$ npm install ganache --global
// To run
$ ganache
This will create a local blockchain and also some test accounts that are used throughout our tests.
Make sure that ganache
is running on its default port 8546
. To change the port in test cases locate LocalTestCase.swift
and modify the static url
variable.
We are using pre-commit to run validations locally before a commit is created. Please, install pre-commit and run pre-commit install
from project's root directory. After that before every commit git hook will run and execute codespell
, swiftlint
and other checks.
Want to improve? It's awesome: Then good news for you: We are ready to pay for your contribution via @gitcoin bot!
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
- You are more than welcome to participate and get bounty by contributing! Your contribution will be paid via @gitcoin Grant program.
- Find or create an issue
- You can find open bounties in Gitcoin Bounties list
- Commita fix or a new feature in branch, push your changes
- Submit a pull request to develop branch
- Please, provide detailed description to it to help us proceed it faster.
@skywinder are charged with open-sourΡe and do not require money for using web3swift library. We want to continue to do everything we can to move the needle forward.
- Support us via @gitcoin Grant program
- Ether wallet address:
0x6A3738c6299f45c31697aceA647D49EdCC9C28A4
- Alex Vlasov, @shamatar - for the initial implementation
- Petr Korolev, @skywinder - bootstrap and continuous support
- Anton Grigorev, @baldyash - core contributor, who use it and making a lot of improvements
- Yaroslav Yashin @yaroslavyaroslav - core contributor of 3.0.0 and later releases.
- Thanks to web3swift's growing list of contributors.
If you believe you have identified a security vulnerability with web3swift, you should report it as soon as possible via email to web3swift@oxor.io. Please do not post it to a public issue tracker.
web3swift is available under the Apache License 2.0 license. See the LICENSE for details.
saeidha@gmail.com . saeid.ha.com
I'm a self-taught Software Developer. I have around two decades of experience in the software industry. At the moment, I work on software development projects as a freelancer.
I enjoy learning and experiment with new things and self-studies, especially if related to new technologies and software development. I have worked with different platforms, mostly in the field of mobile and web development.
Sometimes I give consultation to the startups or cooperate with them.
- Backend: Slim Express.js Sinatra REST GraghQL SOAP RPC
- Frontend: JavaScript CSS HTML5 Sass Less Bootstrap jQuery Vue.js React
- Mobile: Java Objective-C Swift Kotlin Android iOS Flutter
- DevOps: Linux Apache Nginx Git Docker Kubernetes Vagrant Selenium
- Database: MySQL MariaDB MongoDB Redis SQLite MSSQL Realm
- Games: Unity Godot
- Projects: Agile Scrum Kanban
- Programming: PHP Python Java Objective-C C Shell Perl Go Ruby Node TypeScript
-
Senior Software Developer, Freelancer (2007-05 β Present)
Finally, I decide to switch to fulltime, most of the time as a freelancer and sometimes as a contractor in the field of Web development, mostly backend and PHP. In recent past years, I learned other technologies and started to work on application development for mobile, first Android, and then iOS either.
- Working as a Freelancer is always gave me new opotionities for learning new technologies
- As a freelancer, I am able to deal with a wide range of tasks in website development, website design, database design, back-end, and front-end development.
- Utilized existing web technologies including WordPress, Laravel and Drupal for small businesses websites.
-
Senior Software Developer, MyFlashLabs (2019-11 β Present)
Develop and maintain Adobe AIR Native Extensions for use with iOS and Android mobile platforms. Maintain softwares backend based on WordPress REST API.
- Develop and maintain more than fifty AIR Native Extensions.
- Create, develop and maintain all Objective-C and Java libraries for Extensions
- Create and maintain gradle plugins to maintain release workflow automatically.
-
Lead Software Developer, Abasmanesh Research Group (2014-11 β 2018-11)
It was a good experience for me to have more communication with the end users in this job. I work mostly from remote on the website and their mobile applications projects as an independent contractor.
- Transfer customer history and thousands of users' information from legacy software to WooCommerce.
- Develop and maintain more than fifty WordPress plugins.
- Manage, maintain and secured servers and applications for client various needs.
-
Senior Softwar Developer, Bugloos (2014-10 β 2014-11)
It was for short period of time, I just worked as a freelancer on couple of their projects. They asked me for a full-time position, but at the time, I was reluctant to do so.
- Collaborate on develop and maintain the front-end and back-end of a custom built web app by PHP frameworks.
-
Senior Software Developer, Papata Game Studio (2013-12 β 2014-06)
It was a good experience. I did work with some of young and motivated peoples who had a dream to create their own game development studio. I mostly cooperate in development of apps and games and also their online backends.
- Collaborate on the development of two high-quality mobile games, alongside a team of motivated youth developers.
-
Senior Software Developer, Farayaz (2010-05 β 2014-03)
It was my first experience to work directly for a company. I was working as a contractor. It took years, but finally, I realize I'm not that kind of person who can work in fixed work schedules. My job was analysis projects, programming on web development projects, maintaining servers and training of new recruits in the last years.
- Develop and maintain hundreds of websites based on custom cms.
-
Owner / Managing Director, Movable Host (2005-12 β 2013-10)
Provide and manage dedicated servers, virtual servers and hosted services. Setup and secure dedicated and virtual servers.
-
Medior Software Developer, Freelancer (2004-01 β 2007-05)
It's been years past since I started coding. I've started with web development when I was younger as a hobby and then as a part-time freelance job.
- Develop tons of web sites using PHP frameworks, mustly CakePHP.
- This experience has not only helped me to understand the whole process of development but also taught me how to achieve great productivity.
-
Junior Software Developer, Freelancer (2002-01 β 2004-01)
I started programming with Perl and PHP. Those years were the weblogs hype, and must of the time I was working on the design and develop wide types of blog templates. Persianblog, Blogger, Blogspot, Movable Type, WordPress.
-
Diploma, Harati High School (2000-01 β 2004-01)
I have started learning to work with computers before high school through workshops which I always was the youngest participants. My connections with university students and observing the low level of my country's higher education in the field of IT at that time made me decide to leave the academic education system and continue my path through self-studying.
-
Translation of articles related to the field of free software (Salam Dnya Magazine, 2016-01)
Participate in the translation of a series of articles related to the field of free and open source software from English to Persian language.
-
A series of articles in the field of software development (Hive Web Magazine, 2015-01)
Writing weekly about technologies and software development especially mobile development in Persian
-
Community Organizer, Hamfekr (2014-12 β 2018-01)
It is a weekly event and an opportunity for entrepreneurs, entrepreneurs, designers and investors who were networking, exchanging opinions and learning.
- Organize and formation of Hamfekr meetings in Esfahan for years.
- Organize hundreds of weekly meetings with thousands of participants from across the province and the country.
-
Workshop Facilitator, Hamnet (2015-09)
Hemnet is a three-stage entrepreneurship event, based on the local economic and entrepreneurial conditions in each region.
- Help teams for work on their Business Model Canvas and Technical issues.
-
Event Organizer, Startup Spark (2015-07 β 2015-08)
Startup Spark is a startup gathering. Includes seminar on startups issues, tips on new ways of entrepreneurship. Face-to-face interview with one of the leading entrepreneurs and networkers.
- Organize and formation of Startup Spark meetings in Esfahan.
-
Event Organizer, Startup Weekend Isfahan (2013-11)
Startup Weekend is a 54-hour weekend event, during which groups of developers, business managers, startup enthusiasts, marketing experts, graphic artists and more pitch ideas for new startup companies, form teams around those ideas, and work to develop a working prototype, demo, or presentation by Sunday evening.
- Participation in holding and coordinating the first startup weekend in Isfahan.
-
Freelance work, requirements, goal setting, planning, Autocom (2018)
In a workshop on the sidelines of the Isfahan International Computer and Office Automation Exhibition, organized by Ponisha, I spoke about freelance and starting to work as a freelancer.
- Investigate the advantages of freelancing compared to long-term employment.
-
Electronics
I have been interested in electronics since I was a teenager, but I was not very active in this field. Recently, despite microcontroller boards accessibility like Arduino and Raspberry Pi, and discussions like the Internet of Things, I became very interested in this area.
-
3D printing
Unfortunately, I do not have a 3D printer yet, but it is one of the hobbies I am researching these days, and maybe even if I have the opportunity to make a DIY printer.
-
Cryptocurrency
I have been interested in cryptocurrencies for several years, I was mostly a Hodler, but recently I did some work in the field of payment and I became more serious. Recently I worked with Solidity but not serious activity.
With the rising popularity of social voice platforms such as Clubhouse and Twitter Spaces, it is high time for an Open Source alternative. A platform like this would not only enhance credibility within the open-source community but also attract more users and foster growth. An engagement platform that is Open Source has the potential to drive significant traction and help establish a strong presence.
- Real-time Audio Communication by joining rooms and talking to people.
- Ability to create rooms and moderate speakers and events.
- Pair chatting to enable users to find random partners to talk to in the app.
- Real-time messaging(Coming Soon)
- Flutter - Mobile application
- Appwrite - Authentication, Database, Storage and Cloud functions.
- LiveKit - Web Real-Time Communication
β Don't forget to star this repository if you find it useful! β
Thank you for considering contributing to this project! Contributions are highly appreciated and welcomed. To ensure a smooth collaboration, Refer to the Contribution Guidelines.
We appreciate your contributions and look forward to working with you to make this project even better!
By following these guidelines, we can maintain a productive and collaborative open-source environment. Thank you for your support!
If you have any questions, need clarifications, or want to discuss ideas, feel free to reach out through the following channels:
Distributed under the GNU General Public License. See LICENSE for more information.
Thanks a lot for spending your time helping Resonate grow. Keep rocking π₯
-
Hey I am building a rest api for my ecommerce website, which will be used by the frontend to fetch data.
-
I have just started with this project and I am still learning the basics of rest api.
-
Hoping to learn more about rest api and get a better understanding of it.
Canisters:
- token canister
- token registry canister
Select and download a Lil Nouns picture in various sizes and formats.
First, run the development server:
npm run dev
# or
pnpm run dev
Open http://localhost:3000 with your browser to see the result.
-
Hey I am building a rest api for my ecommerce website, which will be used by the frontend to fetch data.
-
I have just started with this project and I am still learning the basics of rest api.
-
Hoping to learn more about rest api and get a better understanding of it.
Are you tired of your old NFTs but not really into selling them? What about modifying them with our tool?
We made a protocol to modify existing NFTs with the help of neural networks using different filters (adding animation and movements, changing style, background, and many others)
We developed the smart contract that uses the create2 mechanism that provides the technology to allow one NFT to own another. As well we trained a neural network to perform animation transfer of motion from source NFT to another NFT. Later other types of neural networks transformation types can be added and applied
It was quite challenging to run a virtual machine with GPU to perform neural network inference. As well we faced some difficulties with the frontend part (deployment and interaction with a smart contract)
We succeeded in training a neural network to generate good-quality gifs and created some funny NFTs.
How to work with Polygon How to mint NFT tokens How to create proxy-contract How to train and deploy neural networks How to run GPU virtual machine How to use Flask
We will try to release our project in mainnet Polygon and start to attract NFT creators