Git Product home page Git Product logo

coinwink's Introduction

Coiwnink V2

In this repository, you will find the source code of the Coinwink app version 2, which is built using Laravel and Vue.js.

The previous V1 version of Coinwink was developed using WordPress and jQuery, and it was live from 2016 to 2022. You can find the first version archived under the Releases section. While the Coinwink V1 was optimized and fast, it was difficult to maintain and develop new features. As a result, the app was migrated to Laravel and Vue.js to improve maintainability and the speed of development.

The new Coinwink V2 includes some code from the V1 that was retained for its optimization and has been transferred unchanged from the previous framework to the new one. However, the overall architecture of the app is now based on Laravel for the backend and Vue.js for the frontend, which allows for easier maintenance and development of new features.

Quickstart

  • Clone this repository.
  • Run composer install and npm install commands.
  • Rename .env.example file to .env and update it with your credentials. You need to provide at least the DB_DATABASE value for the app to work.
  • Update coinwink_auth_sql.php file in public folder with your database credentials.
  • Run the php artisan migrate command to create database tables.
  • Generate your application encryption key by running the php artisan key:generate command.
  • For local environment, set up a virtual host with its path pointing to Laravel's public folder. Then update the virtual host URL in the webpack.mix file as the proxy value.
  • Copy contents from the cryptocurrency-logos repository to /public/img folder to have the following structure /public/img/coins.
  • For hot reload, run the npm run watch command.
  • For a production build, run the npm run prod command.

More info

To create a new user, first update the .env file with your mail server credentials, and then use the user sign up form.

To use all app's features, you need to upgrade your user to Premium by manually editing the database. First, open the cw_settings table and edit your user: set subs column to 1, and enter any amount of SMS credits in the sms column. Then create a new record in the cw_subs table with your user id, set status column to active and plan column to premium.

To get new market price data from CoinMarketCap (for alerts, portfolio, and watchlist), register for the Free CMC API plan, and then update the coinwink_auth_cmc.php file with your credentials. To fetch new data from CMC, run cron_data_cmc.php script.

To trigger and send crypto alerts by email, SMS, and Telegram, run the following scripts:

  • cron_alerts_email_cur.php - Email price alerts
  • cron_alerts_email_per.php - Email percentage alerts
  • cron_alerts_sms_cur.php - SMS price alerts
  • cron_alerts_sms_per.php - SMS percentage alerts
  • cron_alerts_tg_cur.php - Telegram price alerts
  • cron_alerts_tg_per.php - Telegram percentage alerts
  • cron_alerts_portfolio.php - Portfolio alerts

To receive SMS alerts, sign up on Twilio, get your API keys, and update the coinwink_auth_sms.php file. Then run the above mentioned SMS scrips to trigger and send SMS alerts.

For currency rates conversion, two services are utilized. For more info, see the cron_data_cur_rates.php file.

/img/coins folder is for cryptocurrency logos. Our script to update/fetch new logos can be found here.

To migrate from WordPress users, the mikemclin/laravel-wp-password tool is being used. When an old WordPress user tries to log in, the user is automatically moved to Laravel's authentication system by adding the user to the database users table with the user's password rehashed for Laravel.

The database migrations were generated from the existing database with the help of the kitloong/laravel-migrations-generator tool.

License

Coinwink's source code is available for personal and non-commercial use only. For more details, see the LICENSE.

Contribution

You are welcome to report issues, provide your feedback, or suggest ideas and improvements. For similar communication, use the issue tracker or contact us by email.

Screenshots












coinwink's People

Contributors

giekaton avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

coinwink's Issues

Please do not round prices

I bought a few cryptocurrencies but their value is quite small, when using the tracking function their prices will be rounded up so it will be much harder to track.
Can you put the price for example 0.01573? has 4 or 5 decimal places

image

Errors reference cron_alerts_email_cur.php

I am getting these errors in the log:

PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 341
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 342
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 343
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 344
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 345
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 346
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 347
PHP Notice:  Trying to access array offset on value of type null in /home/markzerb/public_html/Coinwink/cron_alerts_email_cur.php on line 348

Can't get it to work. Page stuck at "Searching".

Hi,

Thank you for this project.

I've been trying to get this to work on my own domain but it's not working.
I was hoping for your help.
Here's what I've tried to fix it so far:

  • Put the correct information in auth_sql.php
  • Put the homePath in header.php (https://redacted.com/coinwink/)
  • Tried both dev and live in auth_sql.php
  • Verify that data is in the database.
  • Put API key in auth_cmc.php
  • Run cron_data_cmc.php (this does seem to succeed).
  • Reinstall in coinwink subfolder as per #18

I'm at a loss here.
Here are the errors that I'm getting:

2021-05-23_16-23

Here's my database:

2021-05-23_16-27

Thank you.

Issue with Email

I can get email plugins to work but I believe with PHP 7 something change and this code is not working with coinwink.

PHP Fatal error: Cannot declare class PHPMailer\PHPMailer\PHPMailer, because the name is already in use in /home/crypto/wp-includes/PHPMailer/PHPMailer.php on line 32,

Missing coinwink_sql.php

Hi,

In several places the code includes "coinwink_sql.php" however this doesn't appear to be included in the repository. Can you please provide an example of this file (obviously without your connection details in) so I can get this connected and tested.

Thanks,

Matt

I am not a robot verification is not updating

This verification works just at the first time, after this when I click on the link to new alert, the verification is the same, this would be a problem or it should works like this?

NiceToHave - Current Price

It 'd be fine to show current prices on page "My Alerts", also showing how far/near are from my alert.

Feature request: refresh percentage-based alerts

I'm monitoring certain coins with a X% of increment/decrement from the current price. Every time I receive an alert, I need to manually remove and re-create the alert to adjust the X% to current value. It will be nice a way to refresh this kind of alerts using the current price, without re-adding them.

Feature request: Telegram alerts

I know this can be a very ambitious feature, but I would love (and perhaps pay) for a Telegram bot with that will send me the Coinwink alerts. There is no need to control the Coinwink alerts, just the feature to receive the alerts using Telegram will be a nice thing to have.

Email address [Suggestion]

So I have made an account on the site but even now when I try to make a new alert, form asks to enter the email id every time.
Can you add auto-fill of email for registered users?
Thanks.

SMS message

Can I do so to add my SMS notification code, the admin will pay for the SMS message?

Help More Than Issue

What would be the simplest way to swap out the API used for another? I setup a personal version on a RPi and need it to use my exchanges API instead. I tried just swapping it out.

Stuck on loading...

Everything installed OK, I followed the instructions but when I load the page instead of the coin list loading (below the coins to watch field) it is just stuck on the word "loading...."

I cant add any-coin on portfolio page.

I cant add any coin into the PORTFOLIO

Add your first coin using the 'plus' button below.

To remove the added coin, select it in the dropdown list and click the 'minus' button.


Add or remove coin:

nothing appeared.

When selecting the drop down box it shows "Searching" but nothing happen

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.